Три положителни

Да се позволи въвеждане на числа докато не се въведат 3 положителни.

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

8 Responses to Три положителни

  1. Madness каза:
    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    int main(int argc, char *argv[])
    {
        int a,i,m;
        i=0;
        do{
            cin>>a;
            if(a>0) i++;
            
            
        }
            
        while(i<3);
    
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    
  2. kaloyan каза:
    VAR chislo,broi : integer;
    BEGIN
    broi:=0;
      repeat
        write('vavede chislo: '); readln(chislo);
          if chislo>0 then broi:=broi+1;
      until(broi=3);
      writeln('bravo!');
    readln;
    END.            
    
  3. Lubomir Dizela каза:
     program project1;
         var
           a, b, c: integer;
    
    begin
      repeat
      begin
      WriteLn('Vuvedete 3 chisla');
      ReadLn(a, b ,c);
      if (a>=0) and (b>=0) and (c>=0) then WriteLn('Chislata sa polojitelni!') else
      WriteLn('Sred chislata ima otricatelno/i');
      end;
      until (a>=0) and (b>=0) and (c>=0);
       ReadLn;
    end.        
    • Данаил каза:

      Любомире, решението ти е напълно вярно, но ако условието на задачата беше „Да се позволи въвеждане на числа докато не се въведат едновременно 3 положителни.“

      Например, ако човек въведе първия път 5,3,-4, втория път 10,-2,6 при твоето решение програмата ще му поиска да въведе трети път три числа, макар че де факто човекът е въвел вече 4 положителни до момента.

      Затова решението на Калоян е по-коректно за така поставеното условие на задачата.

  4. Xboxx_ каза:
     program Project1;
    var a ,b, c: integer ;
    Begin
    repeat
    Begin
    write ('Vuvedete chislo:') ;
    readln (a, b, c) ;
    if (a>=0) and (b>=0) and (c>=0) then Writeln ('Chislata sa polojitelni') else
    Writeln   ('Chislata sa otricatelni');
    WriteLn;
     end;
     until  (a>=0) and (b>=0) and (c>=0) ;
    Readln;
       End.                                                     
    • Данаил каза:

      Иване, имаш грешка в логиката – ако някое от числата (дори само едно) не е положително, ще ти изведе съобщение „числата са отрицателни“, което няма да е вярно. По-коректното съобщение в този случай би било „Сред числата има поне едно неположително“, както е направил Любомир.

      Освен това и при теб решението е за друго условие на задачата – виж коментара ми към решението на Любомир по-горе.

    • Данаил каза:

      СуперЕва, оригинално решение – да се вижда дали всяко от числата отговаря на поставеното условие. Но и при теб решението е за друго условие на задачата – виж коментара ми към решението на Любомир по-горе.

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