第8講 添え付き名前をもった箱(配列)
第5話 成績一覧表の完成一歩前
成績一覧表
を実現するプログラム例
#include<iostream>
#include<stdlib.h>
#include<ctime>
using namespace std;
int main(){
cout<<" 成績一覧表"<<endl;
cout<<"出席番号 国語 社会 数学 理科 英語 合計 平均"<<endl;
int i,j,w,a[40][5];
srand(static_cast<unsigned int>(time(0))); //現在時刻を符号なしの整数値に強制的に変更し、srandのシード値にする
for(i=0;i<40;i++){
if(i+1<10){
cout<<" 0"<<i+1<<" ";
}
else{
cout<<" "<<i+1<<" ";
}
for(j=0;j<5;j++){
a[i][j]=rand()%100;
}
for(j=0;j<5;j++){
if(j<4){
if(a[i][j]<10){
cout<<"0"<<a[i][j]<<" ";
}
else{
cout<<a[i][j]<<" ";
}
}
else{
if(a[i][j]<10){
cout<<"0"<<a[i][j]<<" ";
}
else{
cout<<a[i][j]<<" ";
}
}
}
w=0;
for(j=0;j<5;j++){
w+=a[i][j];
}
if(w<10){
cout<<"00"<<w<<" ";
}
else{
if(w<100){
cout<<"0"<<w<<" ";
}
else{
cout<<w<<" ";
}
}
if(w/5<10){
cout<<"0"<<w/5<<" ";
}
else{
cout<<w/5<<" ";
}
cout<<endl;
}
cout<<"合計 ";
for(i=0;i<5;i++){
w=0;
for(j=0;j<40;j++){
w+=a[j][i];
}
if(w<100){
cout<<"0"<<w<<" ";
}
else{
cout<<w<<" ";
}
}
cout<<endl;
cout<<"平均 ";
for(i=0;i<5;i++){
w=0;
for(j=0;j<40;j++){
w+=a[j][i];
}
if(w/5<100){
cout<<"0"<<w/5<<" ";
}
else{
cout<<w/5<<" ";
}
}
cout<<endl;
}
皆さん、このプログラムは社長main()が1人で、
すべて仕事をしてしまっています。
そこで、社長は命じるだけで、
その他は社員がすべて行うように変更しましょう。
#include<iostream>
#include<stdlib.h>
#include<ctime>
using namespace std;
int main(){
cout<<" 成績一覧表"<<endl;
cout<<"出席番号 国語 社会 数学 理科 英語 合計 平均"<<endl;
int i,j,w,a[40][5];
srand(static_cast<unsigned int>(time(0))); //現在時刻を符号なしの整数値に強制的に変更し、srandのシード値にする
for(i=0;i<40;i++){
if(i+1<10){
cout<<" 0"<<i+1<<" ";
}
else{
cout<<" "<<i+1<<" ";
}
for(j=0;j<5;j++){
a[i][j]=rand()%100;
}
for(j=0;j<5;j++){
if(j<4){
if(a[i][j]<10){
cout<<"0"<<a[i][j]<<" ";
}
else{
cout<<a[i][j]<<" ";
}
}
else{
if(a[i][j]<10){
cout<<"0"<<a[i][j]<<" ";
}
else{
cout<<a[i][j]<<" ";
}
}
}
w=0;
for(j=0;j<5;j++){
w+=a[i][j];
}
if(w<10){
cout<<"00"<<w<<" ";
}
else{
if(w<100){
cout<<"0"<<w<<" ";
}
else{
cout<<w<<" ";
}
}
if(w/5<10){
cout<<"0"<<w/5<<" ";
}
else{
cout<<w/5<<" ";
}
cout<<endl;
}
cout<<"合計 ";
for(i=0;i<5;i++){
w=0;
for(j=0;j<40;j++){
w+=a[j][i];
}
if(w<100){
cout<<"0"<<w<<" ";
}
else{
cout<<w<<" ";
}
}
cout<<endl;
cout<<"平均 ";
for(i=0;i<5;i++){
w=0;
for(j=0;j<40;j++){
w+=a[j][i];
}
if(w/5<100){
cout<<"0"<<w/5<<" ";
}
else{
cout<<w/5<<" ";
}
}
cout<<endl;
}
色をつけたところを独立させて社員にしてください。
配列は、main()の前で宣言して
グローバル配列にしましょう。
第4話へ 第6話へ
初心者のためのjava 入門 基礎から応用まで
初心者のための VC++による C言語 入門 C++ 入門 基礎から応用まで第1部
初心者のための VC++による C言語 入門 C++ 入門 基礎から応用まで第2部
初心者のための VC++による C言語 入門 C++ 入門 基礎から応用まで第3部
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座へ
VC++入門
VBA入門
専門用語なしのVBA入門
VB入門
初心者のためのEclipseによるJava入門