Изпълнявай с числа … докато

Да се напише програма, която ще позволи въвеждане на N и чрез цикъл с постусловие ще:

  1. отпечата числата от N до 1
  2. отпечатва нечетните числа от 1 до N
  3. отпечатва произведението на числата от 1 до N
  4. позволява да се въведат N числа и отпечатва сумата на четните

 

 

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

14 Responses to Изпълнявай с числа … докато

  1. Gadget каза:
     
    //Poduslovie 1
        int N;
        cout<<"Vavedete chislo N:";
        cin>>N;
        do{
            N-=1;
            cout<<N<<"; ";
        }
        while(N>1);
        cout<<endl;
     
  2. dreanor каза:
    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    int main(int argc, char *argv[])
    {
        int n;
        cout<<"Wuwedi chislo";
        cin>>n;
        do{
               if (n>0)
               {
                   n--;
                   cout<<n<<endl;
               }
               else
               {
                   n++;
                   cout<<n<<endl;
               }
          }while (n!=1);
        
               
        
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    
  3. Gadget каза:
     
    //Poduslovie 3
        int N,x=1,pr=1;
        cout<<"Vavedete chislo N: ";
        cin>>N;
        do{
            x+=1;
            pr*=x;
        }
        while(x<N);
        cout<<"Otgovorut e: "<<pr<<endl;
     
  4. maleboldjia каза:
    Първо подусловие: 
    
    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    int main(int argc, char *argv[])
    {
        int n,i;
    cout<<"Vavedi chislo: ";
    cin>>n;
    cout<<"Chislata do 1 sa: ";
    do
    {
      n=n-1;
      cout<<n<<"; ";
    }
    while (n>1);   
        
        
        
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    
  5. Gadget каза:
    //Poduslovie 4
        int N,x,sum=0;
        cout<<"Vavedete broqt na chislata koito shte vuvejdate: ";
        cin>>N;
        do{
            cout<<"Vavedete chislo: ";
            cin>>x;
            if(x%2==0)
            sum+=x;
            N--;
        }
        while(N>0);
        cout<<"Sumata na vuvedenite chetni chisla e: "<<sum<<endl;
    
  6. Gadget каза:
     
    //Poduslovie 2
        int N,x=1;
        cout<<"Vavedete chislo N: ";
        cin>>N;
        do{     
          cout<<x<<"; ";
          x+=2;
        }
        while(x<N);
        cout<<endl;
    
  7. dreanor каза:
    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    int main(int argc, char *argv[])
    {
        int chislo,nechetni=1;
        cout<<"Wuwedete chislo ";
        cin>>chislo;
        if (chislo==0) cout<<"Newalidno chislo";
        else
        do{
           cout<<nechetni<<endl;
           if (chislo>0) nechetni+=2;
           else nechetni-=2;
           } while ((nechetni<chislo)||(nechetni>chislo));
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    
    • Данаил каза:

      Тук не съм съгласен. Пробвай да въведеш 6.

      Хубаво е, че си решил да реализираш програмата да работи и за положителни, и за отрицателни числа. Но условието за край не е удачно така. По-добре е преди цикъла да провериш дали числото е отрицателно или не и да си има два отделни цикъла за всеки от случаите. Така няма да се налага при всяко завъртане на цикъла да проверяваш дали трябва да увеличаваш или намаляваш числата, което губи време и бави изпълнението на програмата.

  8. dreanor каза:
    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    int main(int argc, char *argv[])
    {
        int broi,chislo,suma=0;
        cout<<"Wuwedete broq na chislata za wuwejdane ";
        cin>>broi;
        if (broi==0) cout<<"Shtom ne iskate ...\n";
        else
        {
            cout<<"Wuwedete chislata ";
            do{
               cin>>chislo;
               suma+=chislo*(chislo%2);
               broi--;
               } while (broi!=0);
               cout<<"Sumata na nechetnite e: "<<suma<<endl;
        }
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    
  9. dreanor каза:
    #include <cstdlib>
    #include <iostream>
    
    using namespace std;
    
    int main(int argc, char *argv[])
    {
        double chislo,fact=1;
        cout<<"Wuwedete chislo ";
        cin>>chislo;
        if (chislo==0) cout<<"0!=1\n";
        else if (chislo<0) cout<<"Nqma faktorial na otricatelni chisla\n";
        else
        {
        /* Пресмята факториала като започва от самото число и върви към 1.
           Така се спестява една променлива и кода е опростен. */
            cout<<chislo<<"!=";
            do{
               fact*=chislo;
               chislo--;
               } while (chislo!=0);
               cout<<fact<<endl;
        }
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    

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