Kostky – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Kostky – C / C++ – Fórum – Programujte.comKostky – C / C++ – Fórum – Programujte.com

 

dragon124-10
Stálý člen
10. 10. 2011   #1
-
0
-

dobrý den,

nechal jsem se od street punka inspirovat a chci udělat program kde se bude generovat číslo od jedné do šesti a kdo bude mít větší číslo tak vyhrál svou vsázku.

mám problém že se tam ptam jestli chcete opravdu vsadit částku a ono to blbne a bez toho abych to votentroval scantf před tim tak to automaticky skočí to else a tan to přes goto pošle spátky a pak už to vpohodě funguje.

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  int penizepc=10000;
  int penizenpc=10000;
  int kastkapc;
  int kostkanpc;
  int vsazka;
  char odpoved;
  ne:    printf("mate %d $  ", penizepc);
  printf("vas protihrac ma %d $, kolik chcete vsadit?\n  ", penizenpc);
  scanf("%d", &vsazka);
spatnaodpoved:    printf("vas pozustatek na konte bude %d $, opravdu chcete vsadit?(A/N) ", penizepc-vsazka);
    scanf("%c", &odpoved);
  if(odpoved=='A'){
               
}else{
if(odpoved=='N'){
 goto ne;             
  }else{
  printf("prosíme zadejte A pro ano nebo N pro ne\n\n", penizepc);
  goto spatnaodpoved;       
  }}
  
  system("PAUSE");	
  return 0;
}

prosím poraďte

Nahlásit jako SPAM
IP: 217.169.180.–
Peppy0
Stálý člen
10. 10. 2011   #2
-
0
-
  1. Nepoužívaj goto!

a bez toho abych to votentroval scantf před tim tak to automaticky skočí to else a tan to přes goto pošle spátky a pak už to vpohodě funguje.

?? Nerozumiem.

Nahlásit jako SPAM
IP: 85.135.187.–
Qt, QML, C++
dragon124-10
Stálý člen
10. 10. 2011   #3
-
0
-

skus to zkompilovat a spustit .

vsaď si a pak pokračuj. zeptá se ti to jestli to chceš vsadit ale dvakrát. proč?

Nahlásit jako SPAM
IP: 217.169.180.–
street punk+1
Návštěvník
10. 10. 2011   #4
-
0
-

Keď chceš, tak tu máš celé zadanie. Ťažké to neni, len tie podmienky treba dobre ošetriť.

Napíšte program, ktorý umožní používateľovi (PC) hrať hazardnú kockovú hru proti počítaču (CPU). Pravidlá sú nasledovné:
Hráči (PC a CPU) vsadia pevnú čiastku do banku.
Hráč PC hodí kockou. Ak chce, môže zvýšiť svoj vklad o zvolenú sumu, max. však do výšky svojich zostávajúcich peňazí (doplní ju do banku).
CPU hodí kockou. Ak padne číslo väčšie alebo rovné ako hráčovo, akceptuje navýšenú stávku (doplní rovnakú sumu do banku), inak sa vzdá hry (hráč získa bank).
Ak bola prijatá stávka, obaja hráči hodia ešte jednou kockou a vyhodnotí sa výherca nasledovne:
Ak obaja hráči hodili tú istú dvojicu hodnôt, vyhráva CPU (napr. 3+4 a 3+4).
Vyhráva vyšší súčet hodnôt kociek, ak však jeden hráč má dve rovnaké hodnoty na oboch kockách a druhý nie, vyhráva hráč s rovnakými hodnotami. (t.j. 1+1 je viac ako 5+6)
Ak je súčet rovnaký, ale hodnoty na jednotlivých kockách rôzne, vyhráva hráč s vyššou hodnotou na nejakej kocke (napr. 1+6 vyhráva nad 3+4).
Výherca získava bank.
Ak PC nemá peniaze na základný vklad, tak končí (žiadne požičiavanie :)). Ak má peniaze aspoň na základný vklad, môže sa rozhodnúť pokračovať (spustí sa nová partia - treba použiť vhodný interaktívny cyklus). Predpokladá sa, že CPU má nekonečne veľa peňazí...

Nahlásit jako SPAM
IP: 147.175.179.–
Mutagen
~ Anonymní uživatel
549 příspěvků
10. 10. 2011   #5
-
0
-

kdyz uz to tema tu je tak se chci zeptat jak udelat random cislo

pri tomto kodu 

PlayerKostka1 = rand()/100%(KostkaMax-KostkaMin+1)+KostkaMin;
PlayerKostka2 = rand()/100%(KostkaMax-KostkaMin+1)+KostkaMin;

PCKostka1 = rand()/100%(KostkaMax-KostkaMin+1)+KostkaMin;
PCKostka2 = rand()/100%(KostkaMax-KostkaMin+1)+KostkaMin;

tak mi ty cisla jdou docela poporade ... jako pokazdy kdyz zapnu program a jde to po porade tak se hazej presne stejny cisla + pri zapnuti znova programu tak zase uplne ty samy cisla ... nevite nahodou nekdo jak to udelat ? Diky moc. je to jediny co me chybi do tohoto programu ;)

Nahlásit jako SPAM
IP: 89.190.90.–
vorelq
~ Anonymní uživatel
3 příspěvky
10. 10. 2011   #6
-
0
-

#5 Mutagen
Je potřeba připojit knihovnu time. h

#include <time.h>

a v main() mít příkaz 

srand((unsigned)time(NULL));
Nahlásit jako SPAM
IP: 89.103.134.–
Mutagen
~ Anonymní uživatel
549 příspěvků
10. 10. 2011   #7
-
0
-

#6 vorelq
Díky opravdu pomohlo ;) konecne se mi 2 hodinova prace vyplatila :D

Nahlásit jako SPAM
IP: 89.190.90.–
street punk+1
Návštěvník
10. 10. 2011   #8
-
0
-

#5 Mutagen
Poradím ti. Načo stále robiť dokola to isté ? (s náhodným číslom) .. Keď vieš, že nejakú operáciu budeš používať viac krát, tak radšej na ňu urob funkciu a potom ju len volaj a a dané čísla ukladaj do svojich premenných. Riešnie nájdeš na tejto stránke, keď som sa pýtal na funkciu srand ().

Nahlásit jako SPAM
IP: 147.175.179.–
Mutagen
~ Anonymní uživatel
549 příspěvků
10. 10. 2011   #9
-
0
-

#8 street punk
Ne ja to mam vyreseny funguje mi to (sice tam nemam podminky jako na porovnani tech cisel ale mam to udelany tak ze soucet cisel > nez ten druhej soucet) Pokud chces videt jak to mam urobeny tak napis a ja to sem klidne postnu

Nahlásit jako SPAM
IP: 89.190.90.–
street punk+1
Návštěvník
10. 10. 2011   #10
-
0
-

Ja som nenapísal, že ti to nefunguje :) ..ja len ako to z efektívniť. To je len na tebe, ako to spracuješ

Nahlásit jako SPAM
IP: 147.175.179.–
Mutagen
~ Anonymní uživatel
549 příspěvků
10. 10. 2011   #11
-
0
-

#10 street punk
Aha :)))

Nahlásit jako SPAM
IP: 89.190.90.–
Jozef
~ Anonymní uživatel
61 příspěvků
22. 10. 2011   #12
-
0
-

@Mutagen

Akurat tiez riesim tuto vec a neviem sa tu z toho vymotat... ak by sa dalo, mohol by si  mi ten tvoj program poslat na mail, nech sa mozem kuknut jak asi si to robil? mail: martin-1616@azet.sk

Nahlásit jako SPAM
IP: 85.216.189.–
street punk+1
Návštěvník
22. 10. 2011   #13
-
0
-

#12 Jozef
no a náhodou to skopíruješ a obaja nedostaneme ani bod :D...s ktorou časťou si nevieš rady?

Nahlásit jako SPAM
IP: 188.112.97.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 8 hostů

Podobná vlákna

Pascal - hra kostky — založil zdenek

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý