int n, ok, m;
ok = 1;
m = n;
while (n != 0)
{
if (n < m)
ok = 0;
cout << n;
}
if (ok = 1)
cout << "DA";
else
cout << "NU";
Dc nu merge codul?
Răspunsuri la întrebare
Răspuns de
0
in primul rand, tu nu citesti nimic pentru n sau m
trebuie sa introduci un cin>>n;
apoi e problema in while ca se va executa la infinit, trebuie sa adaugi o instructiune care va rezulta la oprirea while-ului, depinde ce iti cere problema (ex: n--;)
la if-ul din while depinde daca cout<<n; il incadresi in if sau in while!!!
la ultimul if se scrie (ok==1) nu (ok=1), un singur egal atribuie valoarea 0 lui ok, in timp ce "==" verifica daca e egal sau nu
codul fixat
#include<iostream>
using namespace std;
int main(){
int n, m, ok=1;
cin>>n;
m=n;
do{
if(n<m) ok=0;
cout<<n;
n--;
}while(n!=0);
if(ok==1) cout<<"DA";
else cout<<"NU";
return 0;
}
Alte întrebări interesante
Informatică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Engleza,
9 ani în urmă
Limba română,
9 ani în urmă
Si iti trebuie si o conditie de iesire din while, tu nu modifici valoarea lui n niciunde, de ce ai pune conditie ca n sa fie diferit de 0. Ori stergi cu totu blocu de while, ori pui o instructiune care sa iti modifice n-ul, de ex n=n/10.
Sa zicem sa rezolvi ambele chestii, dar daca de la inceput scri ca m = n atunci nici nu intra in if si doar o sa iti tipareasca valoarea lui n si apoi Da.