Bir öğretmen öğrencilerin vize notlarına sistematik hata ile not eklemek istemektedir. Bu işlem için şu şekilde bir yol izlemektedir. Öğretmen her öğrenciden, aklından 5 ile 15 arasında bir sayı tutmasını istemektedir. Öğretmende her bir öğrenci için yine aklından rastgele 5 ile 15 arasında bir sayı tutmaktadır. Eğer ilgili öğrencinin aklında tuttuğu sayı, öğretmenin kendisi için aklında tuttuğu sayıdan küçük veya eşit ise öğretmenin ilgili öğrenci için aklından tuttuğu sayı bonus olarak vize notuna eklenecektir. Öğrenci sayısı belirlenecek satır ve sütun sayılarının çarpımı kadardır. (Ör. (4x5)=20 Öğrenci) Öğrencinin notu 100ü geçmemelidir.
Program içerisinde kactane adında bir fonksiyon tanımlanacaktır. Bu fonksiyon dışarıdan herhangi bir parametre almayacak, kaç tane öğrencinin notunun değiştiğini fonksiyondan geri döndürecektir. (Puan ekleme işlemi bu fonksiyon içerisinde yapılmayacaktır. Ana fonksiyon içerisinde ayrıca yaptırılacaktır.)
Öğrencilerin vizeleri, öğrencilerin ve öğretmenin akıllarından tuttukları sayılar, son vize notları ve kaç öğrencinin notunun değiştiği bilgisi ekrana yazdırılacaktır.
Örnek: Sınıf Mevcudu (2x2)=4 Öğrenci
Ögrencinot = 17 99
62 17
Öğrencilerin akıllarından tuttukları sayılar = 8 6
9 12
Öğretmenin aklından tuttuğu sayılar = 9 9
15 11
yeni notlar = 26100
77 17
#include<iostream>
using namespace std;
int kactane_temp;
function void kactane(){
return kactane_temp;
}
public void main(){
int satir_sayi;
cout<<"Satir sayisi: ";
cin>>satir_sayi;
int sutun_sayi;
cout<<"Sutun sayisi: ";
cin>>sutun_sayi;
int ogrenci = satir_sayi * sutun_sayi;
int ana_temp[ogrenci][4];
for (i=0;i<=ogrenci;i++){
int vize;
cout<<"Vize notu: ";
cin>>vize;
int tutulan_sayi;
cout<<"Tutulan sayi: ";
cin>>tutulan_sayi;
ana_temp[i][0] = vize; //ogrenci vize notu
ana_temp[i][1] = tutulan_sayi; //hocanin tuttugu sayi
ana_temp[i][2] = rand(5,15); //ogrencinin tuttugu sayi
if(ana_temp[i][2]<=ana_temp[i][1]){
if(ana_temp[i][2] + ana_temp[i][0] >= 100)
ana_temp[i][3] = 100;
else
ana_temp[i][3] = ana_temp[i][0] + ana_temp[i][1];
kactane +=1;
}
else
ana_temp[i][3] = ana_temp[i][0];
}
printf("Sinif Mevcudu(%dx%d)= %d \n",satir_sayi,sutun_sayi,ogrenci);
printf( "Ogrenci Not: " );
for( int i = 0; i < ogrenci; ++i )
printf( "%d", ana_temp[i][0] );
printf( "\n" );
printf( "Ogrencilerin akillarindan tuttuklari sayilar: " );
for( int i = 0; i < ogrenci; ++i )
printf( "%d", ana_temp[i][2] );
printf( "\n" );
printf( "Ogretmenin aklindan tuttugu sayilar: " );
for( int i = 0; i < ogrenci; ++i )
printf( "%d", ana_temp[i][1] );
printf( "\n" );
printf( "Yeni Vizeler: " );
for( int i = 0; i < ogrenci; ++i )
printf( "%d", ana_temp[i][3] );
printf( "\n" );
printf( "Notu degisen sayisi " );
printf( "%d", kactane() );
printf( "\n" );
}