Segitene valaki?
Kene egy c++ programot irjak amely [-20,+20] intervallumban generál számokat, ezeket kiirja a képernyőre 0 végjelig, és a generált prim számokat összeadja, majd pedig kiirja ezek összegét.
Jelenleg igy néz ki:
#include <iostream>
#include <math.h>
#include <time.h>
#include <stdlib.h>
using namespace std;
int main()
{int a,osszeg=0,i;
srand(time(0));
while (a!=0){
a=rand()%41-20;
cout<<a<<endl;
for (i=2;i<=sqrt(a);++i){
if(a%i==0){
break;}
if ((a%i==0)&&(a!=2)){}
else osszeg=osszeg+a;}
}
cout<<("A prim szamok osszege: ")<<osszeg<<endl;
return 0;
}
Lefutni lefut, de az összegnek hibás eredményt ad
Nyilván a prím ellenőrzéssel van a baj.
Emeld ki egy függvénybe, és nézd át kicsit, mert ez nagyon gány.
Valamint érdemes lenne átgondolni, hogy negatívakra hogy működik ez.
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!