5. Determinați ce se va afișa ca rezultat în urma completării spațiilor libere din următorul
program, dacă se va introduce valoarea lui n=1234. Argumentați.
Programul în C/C++ Argumentarea
#include
using namespace std;
unsigned int n, s, p=1, c;
int main(){
cout<<"Introdu n: ";cin>>n;
while(n){
c=n%10;
if(c%2==0) p=p*c;
else s=s+c; n=n/10;
}
cout<< p <<" "<< s;
}
____________________________________
____________________________________
____________________________________
____________________________________
____________________________________
Răspuns: ______________
Răspunsuri la întrebare
Argumentare:
In programul alaturat se memoreaza produsul numerelor pare, cu ajutorul variabilei p, si suma numerelor impare, cu ajutorul variabilei s.
Pentru n=1234 se va afisa:
8 4
------------------------------------------------------------------------------
Rezolvare:
n=1234
while(1234!=0)
{
c=4;
if(4%2==0) [ADEVARAT]
p=1*4=4;
n=1234/10=123;
}
---------------------------------------
while(123!=0)
{
c=123%10=3;
if(3%2==0) [FALS]
executam ramura else
s=0+3=3;
n=123/10=12;
}
---------------------------------------
while(12!=0)
{
c=212%10=2;
if(2%2==0) [ADEVARAT]
p=4*2=8;
n=12/10=1;
}
---------------------------------------
while(1%2!=0)
{
c=1%10=1;
if(1%2==0) [FALS]
executam ramura else
s=3+1=4;
n=1/10=0;
}
---------------------------------------
while(0!=0)
{nu se executa secventa de instructiuni}
cout<<8<<" "<<4;