Olyat programot hogyan kell irni c++ iostream-ban ami egy szám prímtényezős felbontását adja?
Csak hogy tudd:
"Az IOSTREAM egy olyan C++ könyvtár, melyben olyan osztályok vannak definiálva, melyek a - C nyelvhez képest - megkönnyítik az input-output műveleteket. Az IOSTREAM szabványos könyvtár, az AT&T C++ 2.0 része, ami annyit jelent, hogy minden ilyen C++ rendszert használó platformon megtalálható. Minden alaptípusokra elkészítették a be- és kiviteli függvényeket, a programozónak minden alaptípust ugyanúgy kell kezelnie. Ennek megvalósítása úgy történik, hogy az input-output egységekre osztályok vannak definiálva, az adatokat azok tagfüggvényeivel lehet mozgatni, állapotukat az adattagok mutatják." Forrás : [link]
A feladat megoldása pedig:
#include <iostream>
using namespace std;
int Prim(int);
int KovPrim(int);
int main()
{
int n,d=2;
cout << "Vizsgalando szam: ";
cin >> n;
cout << "Prim felbontas: ";
while(!Prim(n))
{
while(1)
{
if(n%d==0)
{
cout << d << "*";
n/=d;
break;
}
d=KovPrim(d);
}
}
cout << n << "\n";
cin.ignore();
cin.get();
}
int Prim(int n)
{
int i;
for(i=2;i<=n/2;i++)
{
if(n%i==0)
return 0;
}
return 1;
}
int KovPrim(int n)
{
do
{
if(n==2)
n++;
else
n+=2;
}
while(!Prim(n));
return n;
}
... neked is elmondom, ha nem tanulsz, nem nézel utána meg fogsz bukni és jöhetsz velem szőlőt kapálni :)
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!