Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

[Zadatak] Izracunavanje faktorijela uz kontrolu ispravanosti unosa broja N

[es] :: C/C++ programiranje :: C/C++ za početnike :: [Zadatak] Izracunavanje faktorijela uz kontrolu ispravanosti unosa broja N

[ Pregleda: 7758 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

sneijder

Član broj: 208756
Poruke: 3
*.adsl.net.t-com.hr.



Profil

icon [Zadatak] Izracunavanje faktorijela uz kontrolu ispravanosti unosa broja N19.01.2009. u 17:00 - pre 168 meseci
pozdrav svima
s obzirom da sam pocetnik u programiranju i ne kuzim dosta toga, uz pomoc primjera, skripti sam pokusao rijesit jedan zadatak.
vjerujem da dosta toga ne valja, pa ako neko moze ispravit sto ne valja i ukratko objasnit zasto to nije dobro.

hvala svima unaprijed

zadatak je:

Napisati program koji ce unijeti cijeli broj N sa tipkovnice. N mora biti pozitivan broj,
a unos treba ponavljati sve dok se ne unese broj koji zadovoljava taj kriterij. Nakon
unosa izracunati i ispisati na ekran faktorijel tog broja.
Code:

#include <stdio.h>

int main()
{
    int N;
    int i;
    int nFact = 1;
 
    do
    {
        nFact *= i;
        i++;
    }while (i <= N);
    
}
    int N;
    
    while (1)
    {
          cout << "Unesite broj za koji zelite izracunati faktorijel" << endl;
    }
    
    cout << Faktorijel broja iznosi: " << endl;
    
    getchar();
    return0;

}


[Ovu poruku je menjao X Files dana 19.01.2009. u 21:25 GMT+1]
 
Odgovor na temu

Goran Rakić
Beograd

Član broj: 999
Poruke: 3766

Sajt: blog.goranrakic.com


+125 Profil

icon Re: [Zadatak] Izracunavanje faktorijela uz kontrolu ispravanosti unosa broja N19.01.2009. u 17:30 - pre 168 meseci
Evo šeme algoritma za tvoj zadatak. Hajde probaj po ovome da napišeš program. Obe petlje su do..while pošto je uslov na kraju.


http://sr.libreoffice.org — slobodan kancelarijski paket, obrada teksta, tablice,
prezentacije, legalno bez troškova licenciranja
Prikačeni fajlovi
 
Odgovor na temu

sneijder

Član broj: 208756
Poruke: 3
*.adsl.net.t-com.hr.



Profil

icon Re: [Zadatak] Izracunavanje faktorijela uz kontrolu ispravanosti unosa broja N19.01.2009. u 17:58 - pre 168 meseci
evo nest sam probao, muljao...pokrene mi se program al nema nikakvog texta. ajde pomagaj kolega. ne kuzim ti ja bas to

Code:

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int N;
    int nFact = 1;
    do
    {
        cin >> N;
        }while (N>0);
        
        do
        {
               nFact *= 1;
               N--;
               
               }while (N>0);

               {

               cout << "Unesite broj za koji zelite izracunati faktorijel: " << endl;
              
        }

               cout << "Faktorijel broja iznosi: " << endl;
               
    getchar();

}



EDIT: X Files : Molim Vas da zbog preglednosti, kod upisujete između tag-ova predviđenih za to:

[code]
int main ( int argc, char *argv[] )
{
// ...
return 0;
}
[/code]

[Ovu poruku je menjao X Files dana 19.01.2009. u 21:26 GMT+1]
 
Odgovor na temu

marko1981
Marko Nikolic
Beograd

Član broj: 123059
Poruke: 144
89.216.17.*



Profil

icon Re: [Zadatak] Izracunavanje faktorijela uz kontrolu ispravanosti unosa broja N19.01.2009. u 18:02 - pre 168 meseci
Možda si i dobro izračunao, ali gde si odštampao rezultat?
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4894
*.dynamic.sbb.rs.

Jabber: xfiles@elitesecurity.org


+637 Profil

icon Re: [Zadatak] Izracunavanje faktorijela uz kontrolu ispravanosti unosa broja N19.01.2009. u 20:36 - pre 168 meseci
Na osnovu vec ponudjenog algoritma, pokusaj ovo /netestirano/
Code:

#include <cstdlib>
#include <iostream>

using namespace std;

int main()
{
    int N;
    do
    {
        cout << "Upisite N: ";
        cin >> N;
    } while ( N < 1 );


    int nFact = 1;
    do
    {
        nFact *= N;
        N--;

    } while ( N>0 );

    cout << "Faktorijel broja iznosi: " << nFact << endl;

    getchar();
    return 0;
}

 
Odgovor na temu

Goran Rakić
Beograd

Član broj: 999
Poruke: 3766

Sajt: blog.goranrakic.com


+125 Profil

icon Re: [Zadatak] Izracunavanje faktorijela uz kontrolu ispravanosti unosa broja N19.01.2009. u 22:49 - pre 168 meseci
@sneijder Nisi pažljiv i brzaš, a to se u programiranju ne prašta. Vidiš da si promašio uslov za izlazak iz prve petlje (program je u petlji dok god se unosi vrednost veća od nule, a treba obrnuto, "N <= 0"). Takođe onaj ispis "unesite broj" valjda treba da stoji pre učitavanja (cin >> N). U faktorijelu, zašto množiš sa 1 kada u algoritmu lepo piše da se množi sa N? Na kraju nisi ispisao vrednost faktorijela (nedostaje ti "<< nFakt" pre kraja cout naredbe).
http://sr.libreoffice.org — slobodan kancelarijski paket, obrada teksta, tablice,
prezentacije, legalno bez troškova licenciranja
 
Odgovor na temu

sneijder

Član broj: 208756
Poruke: 3
*.adsl.net.t-com.hr.



Profil

icon Re: [Zadatak] Izracunavanje faktorijela uz kontrolu ispravanosti unosa broja N19.01.2009. u 23:56 - pre 168 meseci
gorane hvala puno na pomoci, izmijenio sam to. al sad sam ostao bez jedne petlje, program se pokrene i bez nje. jel ona uopce potrebna??
e sad, program se pokrene, upisem neki broj, i on se odmah zatvori. jel to isto mora tako biti ili? ispricavam se sto gnjavim tolko al stvarno sam tek poceo radit s tim, pokusavam nest skuzit, a taj projekt mi je uvjet za izlazak na ispit, pa ako moze pomoc.



#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
int N;
int nFact = 1;

do
{
nFact *= N;
N--;

}while (N <= 0);

{
cout << "Unesite broj za koji zelite izracunati faktorijel: " << endl;
cin >> N;
}

cout << "Faktorijel broja iznosi: " << nFact << endl;

getchar();

}
 
Odgovor na temu

execution
Sarajevo

Član broj: 171411
Poruke: 5
*.europronet.ba.



Profil

icon Re: [Zadatak] Izracunavanje faktorijela uz kontrolu ispravanosti unosa broja N26.01.2009. u 20:16 - pre 168 meseci
zasto stavljas while N<=0... ti trazis dok ti je vece

evo, npr. ovako radi

Code:

#include <iostream>

using namespace std;

int main(int argc, char *argv[]){
    int N;
    int nFact = 1;
    cout << "Unesite broj za koji zelite izracunati faktorijel: " << endl;
    cin >> N;
do{
    nFact *= N;
    N--;

}while (N != 0);


cout << "Faktorijel broja iznosi: " << nFact << endl;


system ("pause");
return 0;
}

 
Odgovor na temu

g00ran
student

Član broj: 194834
Poruke: 5
*.telrad.net.



Profil

icon Re: [Zadatak] Izracunavanje faktorijela uz kontrolu ispravanosti unosa broja N20.04.2009. u 14:15 - pre 165 meseci
Da se pridruzim sa malim zakasnjenjem u rjesavanju ovog zadatka.
Predlozena rjesenja imaju ogranicenje u broju za koji se trazi faktorijel (mislim da je do 19) u ovom mom primjeru je ogranicenje na 38, meni je potrebno da izbjegnem ovo ogranicenje kako to izvesti ??
Neke instrukcije su kao da se rezultat ispisuje kao jednodimenzionalni niz ??? ako neko uspije da ovo ogranicenje prebrodi na ovaj nacin zamolio bi ga da sto prije postavi rjesenje Hvala

Moj prijedlog

Code:

#include <cstdlib>
#include <iostream>
#include <iomanip.h>
/
using namespace std;
// Zadatak  Izracunati faktoriel nenegativnog broja


int main()
{
  int N,M;
 long double fakt;
    ponovi:
    cout<<"Unesite cijeli nenegativni broj za koji zelite izracunati faktorijel: "<<endl;
    cin>>N;
    cout<<endl;
    if (N<0)
    {
             cout<<"Unijeti broj mora biti veci od 0"<<endl;
             goto ponovi;
             }
               
    fakt=1;
    M=N;
    while (M>1)
    {
            fakt=fakt*M;
            M=M-1;
           
    }
     cout<<fixed<<"Faktorijel broja "<<setprecision(0)<< N<<" je: "<<fakt<<endl;
    
    system("PAUSE");
    return EXIT_SUCCESS;
    
}



pozdrav
 
Odgovor na temu

radoica

Član broj: 12972
Poruke: 158
93.86.2.*



+3 Profil

icon Re: [Zadatak] Izracunavanje faktorijela uz kontrolu ispravanosti unosa broja N20.04.2009. u 20:05 - pre 165 meseci
Potrebna ti je biblioteka za velike cele brojeve (Big Integer)

Nesto ovako (prvi rezultat koji je izabacio google) http://sourceforge.net/projects/cpp-bigint/
 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: [Zadatak] Izracunavanje faktorijela uz kontrolu ispravanosti unosa broja N

[ Pregleda: 7758 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.