| Programmieraufgaben Hier wird regelmäßig eine neue Programmieraufgabe gestellt, die dann gelöst werden soll und in Zusammenarbeit mit den Moderatoren auch besprochen werden kann. |
Diskussion: Russisches Roulette im Forum Programmieraufgaben, in der Kategorie Code Kitchen; Anzeige Zitat: Zitat von _Sakul_ naja, und irgendiwe funktionierts nicht also wenn ich gefragt werde ob ich spielen will tötet ...
![]() |
| | #46 (permalink) | |
| Registriert seit: 09.07.11 ![]() Likes: 2 | Anzeige Zitat:
bin mir jetzt nicht 100ig sicher, habe mit scanf eigtl noch nicht gearbeitet, aber vllt liegt das steuerzeichen '\n' noch im puffer und du wirst deshalb immer gleich umgenietet... | |
| | |
| | #47 (permalink) | |
| Registriert seit: 08.07.11 ![]() Likes: 0 | Zitat:
jetzt funktioniert es einwandfrei ![]() die switch-case-anweisung sieht jetzt so aus: Code: x = 0;
while( x == 0)
{
scanf("%c", &input);
switch( input )
{
case 'a': {
hum = abdruecken();
x = 1;
break;
}
case 'd': {
drehen();
hum = abdruecken();
x = 1;
break;
}
default: {
x = 0;
break;
}
}
} | |
| | |
| | #48 (permalink) |
| Auchw enn ich eine Leiche Ausgrabe ;-) aber habe mich dem Thema jetzt auch mal angenommen und das ganze für die Powershell umgesetzt. Grafik gibt es nicht, Ausgabe ist auch extrem Simpel, aber es funktioniert ^^ Hier Der Code in Powershell: Code:
cls
#Erzeuge Ein Random Objekt und eine Random Zahl
$rand=New-ObjectSystem.Random
$Bullet=$rand.next(0,5)
#Erstelle ein Waffe und "Lade" diese mit einer Patrone
$Gun= @(0,0,0,0,0,0)
$Gun[$Bullet] = 1
#Startet ein neues Spiel
functionNewGame
{
Write-Host"Möchten Sie eine Runde spielen?"
$Game=Read-Host"Bitte drücken Sie J für Ja und N für Nein!"
IF ($Game-like"J")
{
$Bullet=$rand.next(0,5)
#Erstelle ein Waffe und "Lade" diese mit einer Patrone
$Gun= @(0,0,0,0,0,0)
$Gun[$Bullet] = 1
Question
}
ElseIF ($Game-like"N")
{
Exit
}
Else
{
NewGame
}
}
#Setzt die Patronenkammer auf einen StartWert
$chamber=$rand.next(0,5)
#Funktion die Frägt ob man Schießen oder Drehen möchte.
functionQuestion
{
Write-Host"Möchten Sie Drehen oder gleich Schießen?"
$Answer=Read-Host"Bitte drücken Sie S für Schießen, oder D für Drehen!"
IF ($Answer-like"S")
{
Shoot
}
ElseIf ($Answer-like"S")
{
Turn
}
Else
{
Question
}
}
#Diese Funktion Schießt
functionShoot
{
IF ($Gun[$chamber] -eq 1)
{
Write-Host"Sie sind Tod!"
NewGame
}
Else
{
Write-Host"Der nächste Spieler ist drann, sie haben überlebt!"
IF ($chamber-eq 5)
{
$chamber= 0
}
Else
{
$chamber=$chamber+ 1
}
}
Question
}
#Diese Funktion Dreht das Magazin.
functionTurn
{
$chamber=$rand.next(0,5)
Question
}
NewGame
Geändert von elite-noob (04.11.11 um 15:32 Uhr) | |
| | |
| | #49 (permalink) |
| Registriert seit: 12.04.09 ![]() Likes: 2 | Ich hab grad nen Kernel kompiliert und hatte nichts zu tun, dass hier ist in der Zeit entstanden: Code: # include <stdio.h>
# include <stdlib.h>
# include <time.h>
void turn(int *p)
{
*p = 6;
}
int shoot(int *p) {
printf("%d chambers left\n", *p);
return !(rand() % (*p)--);
}
# define COMPUTER 0
# define USER 1
int main() {
int players[2] = { 6, 6 }, who_shoots = 0, c;
char *player_name[2] = { "Computer", "User" };
srand(time(0));
while (1) {
c = 'y';
switch (who_shoots) {
case USER:
printf("Turn? (enter y or n) ");
/* skip newline */
c = (c = getchar()) == '\n' ? getchar() : c;
case COMPUTER:
if (c == 'y')
turn(&players[who_shoots]);
}
printf("%s shoots.... ", player_name[who_shoots]);
if (shoot(&players[who_shoots])) {
printf("%s VERLIERT :(\n", player_name[who_shoots]);
break;
}
who_shoots = !who_shoots;
}
return 0;
} |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| "Sicher" gewinnen bei Roulette? | Pastor | Off topic-Zone | 19 | 10.09.10 17:27 |