Miért nem jó? A következő program nem fut le csak egyszer. Miért?
Sziasztok!
Tudom hülye kérdés de miért csak egyszer fut le ez a program:
#include <iostream>
#include <cmath>
#include <vector>
bool prim(int a);
using namespace std;
int main()
{
int a,i=0;
vector<int> v;
cout << "Add meg a szamot!" << endl;
cin>>a;
while(a!=0){
if (a!=1){
if (prim(a)){
cout<<"A szam prim!"<<endl;
} else {
cout<<"A szam nem prim!"<<endl;
}}
else{ cout<<"A szam egy!"<<endl;
}
v.push_back(a);
cout<<"Add meg a következő számot!"<<endl;
cin>>a;
}
return 0;
}
bool prim(int a){
int i=2;
while(i<=sqrt(a) && a%i!=0 ){
i++;
}
ui:bocsi, hogy ien hülye kérdésekkel zaklatlak titeket de még kezdő vagyok, kb 1 hete c++ozok és ezt nem értem
Nálam lefut rendesen a main().
(amúgy feleslegesen van ott egy int i deklarálva)
a prim(int a) viszont így szintaktikailag se helyes. Nincs ott a függvény vége.
Nincs meg hol ér véget a függvény. Az utolsó } még a while-hoz tartozik.
Igérsz egy bool típusú visszatérési értéket, de sehol sincs egy return benne, ami ennek eleget tesz.
Szószerint olyan, mintha a vége lemaradt volna.
értem:D köszi
idöközben megoldottam és müködik végre:D majd amit felraktam ide is átnézem hogy mit rontottam el mert ugy voltam vele hogy kezdem az elejétöl átgondolom mit miért és akkor pl nem marad benne ilyen felesleges i meg ienek:D a segítségedért pedig köszi:D
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!