Narayan Публикувано Декември 2, 2007 Report Share Публикувано Декември 2, 2007 Здравейте,тъй като съм още новак в С++, ще ви помоля за малко помощ относно 2 задачки. Зад1.: Да се въведат оценките на n ученика ( 4 < n < 8 ) по пет учебни предмета, да се запишат в масив и да се намери средния успех, броя на шестиците и най-високата оценка за всеки от учениците. Зад2.: Да се напише програма, която въвежда от клавиатурата два двумерни масива всеки с по 3 реда и 6 колони, съдържащи цели числа и добавя към всеки елемент на всеки от масивите сбора от индексите му. Да се изведат така получените масиви на екрана. Да се намери най-малкото число във всеки от масивите и да се изведе на екрана. Цитирай Link to comment Сподели другаде More sharing options...
crio Публикувано Декември 2, 2007 Report Share Публикувано Декември 2, 2007 Лесни са задачите... заемам се веднага (ще добавя решенията към поста си) Цитирай Link to comment Сподели другаде More sharing options...
Narayan Публикувано Декември 2, 2007 Author Report Share Публикувано Декември 2, 2007 Първата я направих. Ето кода #include <iostream.h> #include <conio.h> #define MIN 4 #define MAX 8 int main(int argc, char* argv[]) { int number; int marks[8][5]; double average[8]={0,0,0,0,0,0,0,0}; int sixes[8]={0,0,0,0,0,0,0,0}; int maxMark[8]={0,0,0,0,0,0,0,0}; cout << "Enter number of students:"; cin >> number; // cout<<"The number is "<<number<<"..."; if(number<=MIN || number>=MAX) { cout << "Error! Number of students must be between " <<MIN <<" and " <<MAX<<"!"; cout << "\nPress any key to exit..."; getch(); return 1; } for(int i=1;i<=number;i++) { for(int g=1;g<=5;g++) { cout<<"Enter mark "<<g<<" for student "<<i<<": "; cin>>marks[i-1][g-1]; if (marks[i-1][g-1]<2 || marks[i-1][g-1]>6) {cout<<"Error - Mark must be between 2 and 6!" g--; continue; } } } // Find average mark + sixes + maxMark for(int i=1;i<=number;i++) { for(int g=1;g<=5;g++) { average[i-1]+=marks[i-1][g-1]; if(marks[i-1][g-1]==6) sixes[i-1]++; if(maxMark[i-1]<marks[i-1][g-1]) maxMark[i-1]=marks[i-1][g-1]; } average[i-1]=average[i-1]/5; } cout<<"-----------------------"<<endl; for(int i=1;i<=number;i++) cout<<"Average mark for student "<<i<<" is "<<average[i-1]<<endl; cout<<"-----------------------"<<endl; for(int i=1;i<=number;i++) cout<<"Student "<<i<<" has "<<sixes[i-1] << " 6 marks."<<endl; cout<<"-----------------------"<<endl; for(int i=1;i<=number;i++) cout<<"Student "<<i<<" max mark is "<<maxMark[i-1]<<"."<<endl; cout<<"Press any key to exit..."; getch(); return 0; } Ето и втората #include <iostream.h> #include <conio.h> int main(int argc, char* argv[]) { int i,g; int masiv1[3][6]; int masiv2[3][6]; int masiv1_min,masiv2_min; for(i=0;i<3;i++) for(g=0;g<6;g++) { cout<<"Enter array 1 column "<<i<<" row "<<g<<": "; cin>>masiv1[i][g]; } cout<<"--------------"<<endl; for(i=0;i<3;i++) for(g=0;g<6;g++) { cout<<"Enter array 2 column "<<i<<" row "<<g<<": "; cin>>masiv2[i][g]; } cout<<"--------------"<<endl; // Add indexes. for(i=0;i<3;i++) for(g=0;g<6;g++) { masiv1[i][g]+=i+g; masiv2[i][g]+=i+g; } // Show array1 cout<<"[Array 1]"<<endl; for(i=0;i<3;i++) { for(g=0;g<6;g++) { cout<<"["<<i<<"]["<<g<<"] = "<<masiv1[i][g]; if(g!=5) cout<<", "; } cout<<endl; } // Show array2 cout<<"[Array 2]"<<endl; for(i=0;i<3;i++) { for(g=0;g<6;g++) { cout<<"["<<i<<"]["<<g<<"] = "<<masiv2[i][g]; if(g!=5) cout<<", "; } cout<<endl; } cout<<"--------------"<<endl; // Find and show min values masiv1_min=masiv1[0][0]; masiv2_min=masiv2[0][0]; for(i=0;i<3;i++) for(g=0;g<6;g++) { if(masiv1_min>masiv1[i][g]) masiv1_min=masiv1[i][g]; if(masiv2_min>masiv2[i][g]) masiv2_min=masiv2[i][g]; } cout<<"Array 1 min value is " <<masiv1_min<<endl; cout<<"Array 2 min value is " <<masiv2_min<<endl; getch(); return 0; } Цитирай Link to comment Сподели другаде More sharing options...
Препоръчан пост
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.