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

[Zadatak] Sedam malih patuljaka

[es] :: C/C++ programiranje :: C/C++ za početnike :: [Zadatak] Sedam malih patuljaka

Strane: 1 2

[ Pregleda: 3922 | Odgovora: 20 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

anon75319
freelancer
Varazdin(Hrvatska)

Član broj: 75319
Poruke: 239
*.adsl.net.t-com.hr.



Profil

icon [Zadatak] Sedam malih patuljaka08.12.2005. u 15:39 - pre 180 meseci
od profesora sam dobio jedan jednostavan zadatak koji sam napisao i sve radi ali prikazuje i nesto suvisno........

ovdje je kod

Code:
#include <iostream>
using namespace std;
int main()
{
    int hrVrijeme;
    ispocetka:
    cout << hrVrijeme << endl;
    cin >> hrVrijeme;
    if (hrVrijeme==0)
        cout << "12 AM" << endl;
    else if (hrVrijeme==1)
        cout << "1 AM" << endl;
    else if (hrVrijeme==2)
        cout << "2 AM" << endl;
    else if (hrVrijeme==3)
        cout << "3 AM" << endl;
    else if (hrVrijeme==4)
        cout << "4 AM" << endl;
    else if (hrVrijeme==5)
        cout << "5 AM" << endl;
    else if (hrVrijeme==6)
        cout << "6 AM" << endl;
    else if (hrVrijeme==7)
        cout << "7 AM" << endl;
    else if (hrVrijeme==8)
        cout << "8 AM" << endl;
    else if (hrVrijeme==9)
        cout << "9 AM" << endl;
    else if (hrVrijeme==10)
        cout << "10 AM" << endl;
    else if (hrVrijeme==11)
        cout << "11 AM" << endl;
    else if (hrVrijeme==12)
        cout << "12 PM" << endl;
    else if (hrVrijeme==13)
        cout << "1 PM " << endl;
    else if (hrVrijeme==14)
        cout << "2 PM" << endl;
    else if (hrVrijeme==15)
        cout << "3 PM" << endl;
    else if (hrVrijeme==16)
        cout << "4 PM" << endl;
    else if (hrVrijeme==17)
        cout << "5 PM" << endl;
    else if (hrVrijeme==18)
        cout << "6 PM" << endl;
    else if (hrVrijeme==19)
        cout << "7 PM" << endl;
    else if (hrVrijeme==20)
        cout << "8 PM" << endl;
    else if (hrVrijeme==21)
        cout << "9 PM" << endl;
    else if (hrVrijeme==22)
        cout << "10 PM" << endl;
    else if (hrVrijeme== 23)
        cout << "11 PM" << endl;
    goto ispocetka;
        char z;
        cin >> z;
    return 0;
}


koristim Dev-C++
znaci kad kompajlam prog, u prvom redu pojavi se ovaj broj "2009196833"
nemam pojma zasto se pojavljuje.....

zadatak glasi:
Matija ide u SAD na ACSL All-Star natjecanje. Pripremajuci se za to natjecanje matija je saznao da Amerikanci čudno prikazuju vrijeme. Napišite program koji će pomoči matiji pretvarati hrvatsko vrijeme u američko


primjer
ulaz: 22
izlaz: 10 PM



[Ovu poruku je menjao wiktor dana 08.12.2005. u 16:48 GMT+1]
 
Odgovor na temu

anon75319
freelancer
Varazdin(Hrvatska)

Član broj: 75319
Poruke: 239
*.adsl.net.t-com.hr.



Profil

icon Re: [Zadatak] Sedam malih patuljaka08.12.2005. u 15:42 - pre 180 meseci
pocetnik sam u c++ pa imam za vas jos brdo pitanja

dali bi se taj kod mogao napisati krace, tj. bez ovih gomilu elseif i else naredba?

gdje mogu saznati brzinu otvaranja programa?
jer mi je ograničenje 1 s



[Ovu poruku je menjao wiktor dana 08.12.2005. u 16:50 GMT+1]
 
Odgovor na temu

idb
Ivan Bulic
Beograd

Član broj: 4436
Poruke: 402



Profil

icon Re: [Zadatak] Sedam malih patuljaka08.12.2005. u 18:03 - pre 180 meseci
Citat:
znaci kad kompajlam prog, u prvom redu pojavi se ovaj broj "2009196833"
nemam pojma zasto se pojavljuje.....

promenljivu hrVrijeme nigde nisi inicijalizovao, pa se tu zadesila neka slucajna vrednost
izbisi red
Code:
cout << hrVrijeme << endl;

i nestace problemi, ili ga prebaci posle ucitavanja ( >> hrVrijeme;)
P.S. 1: Sta ce se desiti ako uneses recimo karakter 'f'?

Tvoj profa je sigurno hteo nesto poput ovoga dole:
Code:

#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
    int hrVrijeme = 0;
    do
    {
       cin >> hrVrijeme;
       if ((hrVrijeme<0)||(hrVrijeme>23)) continue;
       //else if (hrVrijeme==0) cout <<"12 AM" << endl; 
            // ne znam da li je 00:00 == 12AM , ako jeste => ti ukloni "//"
       else if (hrVrijeme==12)cout <<"12 PM" << endl;
       else if (hrVrijeme<12) cout << hrVrijeme<<" AM" << endl;
       else  cout << hrVrijeme-12<<" PM" << endl;
    }
    while (hrVrijeme>=0); // uslov izlaska hrVrijeme<0
    system("PAUSE");
    return 0;
}

P.S. 2: I dalje ostaje problem: Sta ce se desiti ako uneses recimo karakter 'f'?
Ovo mozes resiti recimu, unosom string promenljive koju zatim konvertujes u int,....
 
Odgovor na temu

idb
Ivan Bulic
Beograd

Član broj: 4436
Poruke: 402



Profil

icon Re: [Zadatak] Sedam malih patuljaka08.12.2005. u 18:04 - pre 180 meseci
izvinjeneje ovo je bio dupli post, usled losih veza...

[Ovu poruku je menjao idb dana 08.12.2005. u 19:15 GMT+1]
 
Odgovor na temu

NrmMyth
Ivan Maček
Split

Član broj: 63456
Poruke: 849
*.cmu.carnet.hr.

Sajt: www.dump.hr


Profil

icon Re: [Zadatak] Sedam malih patuljaka09.12.2005. u 20:34 - pre 180 meseci
Radi se o zadatku sa HPL-a, jeli tako. ;)
Najlakse ti je provjeriti dali je broj manji od 12, jednak 12, veci od 12 i jednak 24. I onda ispises odgovarajuce odgovore. Lako je razmisli malo.
 
Odgovor na temu

sucur
Miljan Sucur
Web developer
Istocno Sarajevo

Član broj: 50035
Poruke: 411
*.so.pttrs.net.



+1 Profil

icon Re: [Zadatak] Sedam malih patuljaka09.12.2005. u 23:22 - pre 180 meseci
Ma samo ga preko for petlje provuci i to je to.
 
Odgovor na temu

anon75319
freelancer
Varazdin(Hrvatska)

Član broj: 75319
Poruke: 239
*.adsl.net.t-com.hr.



Profil

icon Re: [Zadatak] Sedam malih patuljaka10.12.2005. u 10:05 - pre 180 meseci
da zadatak je sa HPLa

evo kako sam glup :D
ja sam proucavao ovaj idbov kod i cudil sam se kak je sa 3 IFova sve rješil a zapravo vrlo jednostavno
ipak necu kopirati kod i dati profi nego budem probal sam rješiti ;)
 
Odgovor na temu

anon75319
freelancer
Varazdin(Hrvatska)

Član broj: 75319
Poruke: 239
*.adsl.net.t-com.hr.



Profil

icon Re: [Zadatak] Sedam malih patuljaka10.12.2005. u 10:08 - pre 180 meseci
e da kako da jos provjerim brzinu izvrsavanja jer mi je ograničenje 1 s.......
 
Odgovor na temu

NrmMyth
Ivan Maček
Split

Član broj: 63456
Poruke: 849
*.cmu.carnet.hr.

Sajt: www.dump.hr


Profil

icon Re: [Zadatak] Sedam malih patuljaka10.12.2005. u 18:24 - pre 180 meseci
:)))
Vjeruj mi 3 ifa upadnu u tu jednu sekundu...
Obicno su ti prva 3 zadatka sa HPL-a za rijesiti bez poznavanja ikakvih algoritama i struktura, pa u njima i ne moras "provjeravati brzinu."
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4876
*.nat-pool.po.sbb.co.yu.

Jabber: xfiles@elitesecurity.org


+628 Profil

icon Re: [Zadatak] Sedam malih patuljaka11.12.2005. u 09:58 - pre 180 meseci
Kuda ide ovaj 'naš' region? Voleo bih da se upoznam s profesorom koji 'meri' brzinu
i tako ocenjuje C++ programe... Umesto da se kroz jezik C++ proučavaju OOP
tehnike, sve se svodi na rešavanje strukturalnih problema kroz C++. Isto kao
na BASIC-u, FORTRAN-u i Pascal-u pre 20 godina... Nema kvalitativnog pomaka.

Varaždin je pre 15 godina bio EPICENTAR računarstva u državi. Imali su jedan od
najboljih (najupotrebljivijih) računara u državi po mom mišljenju, koji je proizvodila
PEL - PROFESIONALNA ELEKTRONIKA:

ORAO 32, 102 - Ugradjen izuzetan BASIC i izuzetan 6502 asembler.

Zahvaljujući tom računaru (koga i dan-danas imam i radi) sam i počeo da se bavim
programiranjem.

Veruj mi, taj JEDAN MHz (megaherc) u INTERPRETER modu BASIC-a bi progurao
tvoje IF naredbe za JEDNU sekundu, a kamo li Dev-C++ kompajler na današnjim
procesorima.

EDIT:

Code:

// C način - NETESTIRANO

// ovo stavljaš tamo gde i ostale include direktive
#include "time.h"

// ovo staviš iza main()
clock_t start, finish;

// odmah iza unosa svih podataka potrebnih za proračun staviš ovo...
start = clock();

// OVDE STAVIŠ TVOJ KOD!!!

// ovo ide iza tog tvog koda
finish = clock();
cout << "Vreme izvršavanja (u sekundama): " << ( (double)( finish - start ) ) / CLOCKS_PER_SEC;

// e sad ne znam kako će se ovo zaokruživati pa probaj da izbegleš ono deljenje sa CLOCKS_PER_SEC
// da bi dobio rezultat približniji milisekundama.




[Ovu poruku je menjao X Files dana 11.12.2005. u 11:13 GMT+1]

EDIT:

E evo kako bi merenje islo preko klase i RAII-ja (dakle u duhu C++-a):

http://www.informit.com/guides...usplus&seqNum=156&rl=1



[Ovu poruku je menjao X Files dana 11.12.2005. u 12:56 GMT+1]
 
Odgovor na temu

anon75319
freelancer
Varazdin(Hrvatska)

Član broj: 75319
Poruke: 239
*.adsl.net.t-com.hr.



Profil

icon Re: [Zadatak] Sedam malih patuljaka12.12.2005. u 13:27 - pre 180 meseci
elitesecurity i have a problem, jucer dok sam se tuširal......
razmišljal sam o zadacima koje sam dobil i onda sam se sjetil ovog djela
"izlazni podaci: Rješenje treba ispisati na zaslon. U prvi i jedini redak treba ispisati redni broj patuljaka koj nedostaje"
(to je 2. zadatak)
kak to rješiti ........ :'(
 
Odgovor na temu

anon75319
freelancer
Varazdin(Hrvatska)

Član broj: 75319
Poruke: 239
*.adsl.net.t-com.hr.



Profil

icon Re: [Zadatak] Sedam malih patuljaka12.12.2005. u 13:36 - pre 180 meseci
drugi zadatak sam rješil ali me muci jos samo taj problem(u gornjem postu)
evo koda
Code:

#include <iostream>
using namespace std;
int main(void) {
    int prvi, drugi, treci, cetvrti, peti ,sesti, zbroj;
    cin>>prvi;
    cin>>drugi;
    cin>>treci;
    cin>>cetvrti;
    cin>>peti;
    cin>>sesti;
    zbroj=prvi+drugi+treci+cetvrti+peti+sesti;
    int ukPatuljakaZbroj=28;
    int patuljakNedostaje=ukPatuljakaZbroj - zbroj;
    cout << patuljakNedostaje << endl;
    char z;
    cin>>z;
    return 0;
}

 
Odgovor na temu

idb
Ivan Bulic
Beograd

Član broj: 4436
Poruke: 402



Profil

icon Re: [Zadatak] Sedam malih patuljaka12.12.2005. u 13:42 - pre 180 meseci
A gde ti je tekst zadatka?
 
Odgovor na temu

anon75319
freelancer
Varazdin(Hrvatska)

Član broj: 75319
Poruke: 239
*.adsl.net.t-com.hr.



Profil

icon Re: [Zadatak] Sedam malih patuljaka12.12.2005. u 13:59 - pre 180 meseci
evo tekst

Sedam malih patuljaka krenulo je, trbuhom za kruhom, na dalek put. Svake noći, nakon što zapale vatricu i sjednu u krug oko nje patuljci se prebrojavaju da vide jesu li svi na broju. Patuljci su označeni brojevima od 1 do 7, te pri prebrojavanju svatko od njih kaže svoj broj.

Jedne noći čulo se samo šest brojeva pri prebrojavanju što znači da jedan od njih nedostaje, ali oni ne mogu zaključiti tko je to. Pomozite malenim patuljcima i napišite program koji rješava zadani problem.

Ulazni podaci

Ulazni podaci učitavaju se sa tipkovnice. U šest redaka nalazi se po jedan broj. To su brojevi koje su patuljci izgovorili pri prebrojavanju.

Izlazni podaci

Rješenje treba ispisati na zaslon. U prvi i jedini redak treba ispisati redni broj patuljka koji nedostaje.

Test primjeri

tipkovnica
1
2
3
4
5
6

zaslon
7
tipkovnica
7
1
5
6
2
4

zaslon
3
tipkovnica
3
6
2
5
7
4

zaslon
1

taj mi je bil laksi nego prvi.........
 
Odgovor na temu

idb
Ivan Bulic
Beograd

Član broj: 4436
Poruke: 402



Profil

icon Re: [Zadatak] Sedam malih patuljaka12.12.2005. u 16:30 - pre 180 meseci
Ako sam dobro shvatio...
Code:

    .
    .
    .
    cout << patuljakNedostaje;    // << endl;
//    char z;
//    cin>>z;
    return 0;
}

PS.
A sta ce se desiti ako uneses (8,9,10,11,12,13):

8
9
10
11
12
13
-35

Snezana (Sneguljica) ce da dobije infarkt!
 
Odgovor na temu

anon75319
freelancer
Varazdin(Hrvatska)

Član broj: 75319
Poruke: 239
*.adsl.net.t-com.hr.



Profil

icon Re: [Zadatak] Sedam malih patuljaka12.12.2005. u 16:34 - pre 180 meseci
pa pravila za program su strogo definirana i nigde ne pise da treba napraviti "zastitu" od prevelikih unosa ;)
a i mogel bi rjesiti taj problem pa nebi bil broj u minusu ;)

hvala na pomoci
 
Odgovor na temu

NrmMyth
Ivan Maček
Split

Član broj: 63456
Poruke: 849
*.cmu.carnet.hr.

Sajt: www.dump.hr


Profil

icon Re: [Zadatak] Sedam malih patuljaka12.12.2005. u 17:01 - pre 180 meseci
Evo ti rijesenje:
zbroji broj svakog patuljka i oduzmi od 28 (suma svih patuljka) i dobit ces broj onoga koji nedostaje.
 
Odgovor na temu

anon75319
freelancer
Varazdin(Hrvatska)

Član broj: 75319
Poruke: 239
*.adsl.net.t-com.hr.



Profil

icon Re: [Zadatak] Sedam malih patuljaka12.12.2005. u 17:51 - pre 180 meseci
pa to sam i napravil gore.......
pogledaj malo bolje kod

 
Odgovor na temu

anon75319
freelancer
Varazdin(Hrvatska)

Član broj: 75319
Poruke: 239
*.adsl.net.t-com.hr.



Profil

icon Re: [Zadatak] Sedam malih patuljaka12.12.2005. u 17:57 - pre 180 meseci
Citat:
idb: Ako sam dobro shvatio...
Code:

    .
    .
    .
    cout << patuljakNedostaje;    // << endl;
//    char z;
//    cin>>z;
    return 0;
}

PS.
A sta ce se desiti ako uneses (8,9,10,11,12,13):

8
9
10
11
12
13
-35

Snezana (Sneguljica) ce da dobije infarkt!


vjerovatno nisi dobro shvatio...

znaci pri upisu patuljaka se ti brojevi nebi smjeli prikazivati na zaslonu(tak sam ja to shvatil)
jer kaze
Rješenje treba ispisati na zaslon. U prvi i jedini redak treba ispisati traženi brojiz zadatka....

ako je neko bil na takvim natjecanjima on to najbolje zna. inace takvih ograničenja nije bilo na QBASIC natjecanjima
 
Odgovor na temu

anon75319
freelancer
Varazdin(Hrvatska)

Član broj: 75319
Poruke: 239
*.adsl.net.t-com.hr.



Profil

icon Re: [Zadatak] Sedam malih patuljaka12.12.2005. u 18:01 - pre 180 meseci
Citat:
idb:

PS.
A sta ce se desiti ako uneses (8,9,10,11,12,13):

8
9
10
11
12
13
-35

Snezana (Sneguljica) ce da dobije infarkt!


kolko ja znam nema vise od 7 patuljaka

sad sam to rješio(tak da ne moze ispasti negativan broj)
kod
Code:

#include <iostream>
using namespace std;
int main(void) {
    int prvi, drugi, treci, cetvrti, peti ,sesti, zbroj;
    cin>>prvi;
    cin>>drugi;
    cin>>treci;
    cin>>cetvrti;
    cin>>peti;
    cin>>sesti;
    zbroj=prvi+drugi+treci+cetvrti+peti+sesti;
    [b]int ukPatuljakaZbroj=prvi+drugi+treci+cetvrti+peti+sesti;[/b]
    int patuljakNedostaje=ukPatuljakaZbroj - zbroj;
    cout << patuljakNedostaje << endl;
    system("PAUSE");
    return 0;
}
 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: [Zadatak] Sedam malih patuljaka

Strane: 1 2

[ Pregleda: 3922 | Odgovora: 20 ] > FB > Twit

Postavi temu Odgovori

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