Ученици с дадена оценка

Да се напише програма, която позволява да се въведат от клавиатурата брой ученици и по една оценка за всеки от тях. След това при въвеждане на оценка отпечатва колко ученици имат тази оценка и кои номера са. Ако няма такива ученици, да се изведе подходящо съобщение.

Публикувано в СИП с етикети . Постоянна връзка.

7 Responses to Ученици с дадена оценка

  1. Svetli каза:
    program Project1;
    type
      Ocenki = record
        ime:string;
        no:integer;
        ocenka:real;
      end;
    var
      N:array[1..50] of Ocenki;
      Br,O,i:integer;
    
    begin
      Br:=0;
      Writeln('Vavedete kolko uchenici sa:');
      Readln(Br);
      Writeln;
    
      Writeln('Vavejdaite ime,nomer i ocenka, dokato ne signalizirame za krai');
      for i:= 1 to Br do begin
        Writeln;
        Write('Ime:');
        Readln(N[i].ime);
        Write('Nomer v klasa:');
        Readln(N[i].no);
        Write('Ocenka:');
        Readln(N[i].ocenka);
      end;
      Writeln('STOP');
      Writeln;
    
      Writeln('Vavedete ocenka za sravnenie');
      Readln(O);
      Writeln;
    
      Writeln('Nomerata. koito imat ',O,' sa:');
      for i:= 1 to Br do begin
      if O = N[i].Ocenka then
         Writeln(N[i].no)
      else Writeln('Nqma nomera s takava ocenka');
      end;
    
      Readln;
    end.  
    
  2. Боряна каза:
     
    program Project1;
    type
      uchenik=record
        N: integer;
        O: integer;
      end;
    var
      A: array[1..100] of uchenik;
      i, P, Oc, br: integer;
    begin
      br:=0;
      Write('Vavedete broi uchenici: ');
      ReadLn(P);
    
      for i:= 1 to P do begin
        A[i].N:=i;
        Write('Vavedete ocenkata na uchenik nomer ', i, ': ');
        ReadLn(A[i].O);
      end;
    
      Write('Tazi informacia beshe poluchena. Sega vavedete ocenka, koiato shte tarsite: ');
      ReadLn(Oc);
      for i:=1 to P do
        if Oc=A[i].O then br:=br+1;
      WriteLn('Tazi ocenka sa izkarali ', br, ' uchenici.');
      if br<>0 then begin
        WriteLn('Nomerata na tezi uchenici sa:');
        for i:=1 to P do
          if Oc=A[i].O then WriteLn(A[i].N);
      end;
      ReadLn;
    end.
    
  3. Димитър каза:
     program Project1;
    type // Тип
      Ocenki = record // Оценки=рекорд
        ime:string; // Име на поредица от символи
        no:integer; // Няма цели числа
        ocenka:real; // Оценката е реално число
      end; // Край;
    var // Декларации за променливи
      N:array[1..50] of Ocenki; // Указва масив от оценки от 1 до 50
      Br,O,i:integer; // Br,O,i  са цели числа
     
    begin // Начало на програмата
      Br:=0; // Броя=0
      Writeln('Vavedete kolko uchenici sa:'); // Отпечатва текста в скобите
      Readln(Br); // Прочита (Br)
      Writeln; // Отпечатва нов ред
     
      Writeln('Vavejdaite ime,nomer i ocenka, dokato ne signalizirame za krai'); // Отпечатва текста в скобите
      for i:= 1 to Br do begin // за i:= 1 до Br начало на блок от оператори
        Writeln; // Добавя нов ред
        Write('Ime:'); // Отпечатва текста в скобите
        Readln(N[i].ime); // Прочита стойността в скобите
        Write('Nomer v klasa:'); // Отпечатва текста в скобите
        Readln(N[i].no); // Прочита (N[i].no)
        Write('Ocenka:'); // Отпечатва текста в скобите
        Readln(N[i].ocenka); // Прочита (N[i].ocenka)
      end; // Край на програмата
      Writeln('STOP'); // Отпечатва ('STOP')
      Writeln; // Отпечатва нов ред
     
      Writeln('Vavedete ocenka za sravnenie'); // Отпечатва текста в скобите
      Readln(O); // Прочита (O)
      Writeln; // Отпечатва нов ред
     
      Writeln('Nomerata. koito imat ',O,' sa:'); // Отпечатва ('Nomerata. koito imat ',O,' sa:')
      for i:= 1 to Br do begin // за i:= 1 to Br нов блок от оператори
      if O = N[i].Ocenka then // Ако O = N[i].Ocenka тогава
         Writeln(N[i].no) // Отпечатва (N[i].no)
      else Writeln('Nqma nomera s takava ocenka'); // В друг случай отпечатва текста в скобиет
      end; // Край на програмата
     
      Readln; // Прочита стойностиет
    end. // Край.  
  4. Alexander1 каза:
    #include <iostream>
    
    /* run this program using the console pauser or add your own getch, system("pause") or input loop */
    //Да се напише програма, която позволява да се въведат от клавиатурата брой ученици и по една оценка за всеки от тях.
    //След това при въвеждане на оценка отпечатва колко ученици имат тази оценка и кои номера са.
    //Ако няма такива ученици, да се изведе подходящо съобщение.
    using namespace std;
    int main(int argc, char** argv) {
    	int N,i,ocenka[i],a;
    	cout<<"Vavedete broq na uchenicite "<<endl;
    	cin>>N;
    	for(i=1;i<N+1;i++)
    	{
    		cout<<"vavedete ocenkata na uchenika "<<endl;
    		cin>>ocenka[i];
    		cout<<"Nomer "<<i<<"-"<<ocenka[i]<<endl;
    	}
    	cout<<"Vavedete ocenka za sravnenie: "<<endl;
    	cin>>a;
    	for(i=1;i<N+1;i++)
    	{
    		if(ocenka[i]==a)
    		{
    			cout<<"Nomer"<<i<<"-"<<a<<endl;
    		}
    		else 
    		{
    			cout<<i<<" nomer ne e s  takava ocenka"<<endl;
    		}
    	}
    	return 0;
    }
    • Данаил каза:

      Алекс, добре е, и вярно, но за „Няма такава оценка“ идеята е след цикъла да се изведе обобщено има ли такива ученици или не, а не за всеки. Прави се с една булева променлива флаг, решавали сме такива задачи.

  5. Alexander1 каза:
    #include <iostream>
     
    /* run this program using the console pauser or add your own getch, system("pause") or input loop */
    //Да се напише програма, която позволява да се въведат от клавиатурата брой ученици и по една оценка за всеки от тях.
    //След това при въвеждане на оценка отпечатва колко ученици имат тази оценка и кои номера са.
    //Ако няма такива ученици, да се изведе подходящо съобщение.
    using namespace std;
    int main(int argc, char** argv) {
        int N,i,ocenka[i];
    	int a;
        int broi=0;
        cout<<"Vavedete broq na uchenicite "<<endl;
        cin>>N;
        for(i=1;i<N+1;i++)
        {
            cout<<"vavedete ocenkata na uchenika "<<endl;
            cin>>ocenka[i];
            cout<<"Nomer "<<i<<"-"<<ocenka[i]<<endl;
        }
        cout<<"Vavedete ocenka za sravnenie: "<<endl;
        cin>>a;
        for(i=1;i<N+1;i++)
        {
            if(ocenka[i]==a)
            {
            	broi++;
            	cout<<i<<"-"<<ocenka[i]<<endl;
    		}
    		else
    		{
    			cout<<"nqma takava ocenka ";
    			return false;
    		}
    }
    cout<<"broq na uchenicite s takava ocenka e "<<broi<<endl;
        return 0;
    }

Вашият коментар