Informatică, întrebare adresată de suciuradu, 9 ani în urmă

Cerinţa
Se citește de la tastatură un număr natural de maxim 2 cifre. Să se afișeze pe ecran valori astfel: dacă numărul este mai mic sau egal cu 15 se va afișa pătratul valorii sale; dacă numărul este cuprins între 16 și 30 (inclusiv) se va afișa suma cifrelor sale; în caz contrar se va afișa produsul cifrelor sale.

Date de intrare
Programul va citi de la tastatură un umăr natural cu cel mult două cifre.

Date de ieşire
Programul va afișa o valoare conform descrierii din cerință.

Restricţii şi precizări
Numărul citit este cuprins între 0 și 99, inclusiv.

Am folosit codul acesta si primesc doar 80 de puncte, ce caz imi scapa?
#include
using namespace std;
int main ()
{
int a;
cin>>a;
if (a<=15)
cout< else if (a>15 && a<=30) {
int s=0;
while (a>0) {
s=s+a%10;
a/=10;
}
cout< }
else {
int k=0;
while (a>0) {
k=k*a%10;
a/=10;
}
cout< }
return 0;
}


boiustef: de ce faci cu while dacă ştii că numărul e de două cifre, nu mai mult???
boiustef: cu părere de rău nu văd codul tău complet, ci trunchiat... nu putem comenta

Răspunsuri la întrebare

Răspuns de boiustef
3

Răspuns:

#include <iostream>

using namespace std;

int main()

{

   int n,z,u;

   cin>>n;

   if (n<=15) cout <<n*n;

   else {

           z=n/10; u=n%10;

       if (n>30) cout<<z*u;

       else cout<<z+u;

   }

   return 0;

}

Explicație:

z - cifra zecilor

u - cifra unităţilor

Alte întrebări interesante