Folge dem Video um zu sehen, wie unsere Website als Web-App auf dem Startbildschirm installiert werden kann.
Anmerkung: Diese Funktion ist in einigen Browsern möglicherweise nicht verfügbar.
i#include <stdio.h>
#include <stdlib.h>
int main() {
srand(time(NULL)); /*Initialisiert Zufallszahl*/
int Zufall=rand(); /*Zufallszahl*/ <---- Muss ich hier mit GRatezahl verknüpfen? wenn ja, wie?
int GRatezahl, Ratezahl, count=0, erraten=0; /*Variablen*/
/*Ausgabe*/
printf("Bitte geben Sie die groestmoegliche Ratezahl ein: ", GRatezahl);
scanf("%i", &GRatezahl);
/*do while Schleife beginnt*/
do {
printf("Geben Sie nun bitte Ihren Tipp ab: ", Ratezahl);
scanf("%i", &Ratezahl);
/*Wenn, Zahl richtig geraten*/
if(Ratezahl==Zufall) {
erraten=1;
count++;
}
/*Wenn, Zahl falsch geraten*/
else {
(Ratezahl>Zufall) ? printf("Die Zahl ist zu gross\n") : printf("Die Zahl ist zu klein\n");
count++;
}
}
while((erraten != 1) && (count != 0));
if (erraten == 1)
{
printf("Mit %i Versuchen erraten!\n", count);
}
}
Ja ich denke mal das war auch so gewollt, denn dadurch kann man den Wert einer Variable in einem Bereich halten (da modulo Rest bei Teilvorgang ist, Rest niemals größer als Divisor). Durch die Multiplikation erreichst du nur, dass die Zufallszahlen nicht eine von 0, 1, 2, 3 ..., RAND_MAX ist, sondern das sie eine von 0, 10, 20, 30, ..., RAND_MAX * 10 ist.versuch es mal mit
zufall = rand()*10;
%ist die modulo-Funktion
Das ist in sofern nicht falsch, das Fließkommazahlen auch Zahlen zwischen 0 u. 1 umfassen, aber da die Funktion rand generell nur integer zurückgibt, hat das nicht's mit dem Thema zu tun. Wenn man Allerdings Zahlen im Kommabereich haben will, muss man das Ergebnis durch 10^n, wobei n die Nachkommastellen sind, teilen.Versuch es mal mit einem double oder float für zufall. Zahlen zwischen 0 und 1 sind meißtens keine ints
#include <iostream>
#include <stdlib.h>
#include <time.h>
int main()
{
srand( time (NULL) );
int zufall;
zufall = rand()%10+1;
cout << zufall << endl;
system("PAUSE");
return 0;
}
#include <iostream>
#include <ctime>
#include <cstdlib>
int main()
{
std::srand(static_cast<unsigned>(std::time(NULL)));
std::cout << std::rand() << std::endl;
std::cin.ignore();
}
Soweit korrekt, nur sind die Funktionen time, srand u. rand im Namensraum std, es sei denn du hast die selber implementiert. Dann solltest du bite auch C++-Style-Cast nutzen und evtl. solltest du dir mal Artikel darüber durchlesen warum Module-Op nicht geeignet ist (für sowas).#include <ctime>
#include <cstdlib>
long sek;
time(&sek);
srand((unsigned)sek);
zahl = rand() % gewünschtesIntervall + gewünschterMinimalwert
ld: 0711-317 ERROR: Undefined symbol: .zuf
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
collect2: ld returned 8 exit status
Wieso zweite Frage? Wo war denn die erste? Evlt. wäre es einfacher, wenn du Satzzeichen verwenden würdest... Bitte halte dich an die Netiquette!eine zweite frage
Statt rand() rufst du eben zuf(GRandmax) auf., wir haben eine datei zum einbinden bereitgestellt bekommen die unsere Zufallszahlen erzeugen soll. also anderes als in diesem code. ich weiß jedoch nicht wie ich das einbinden kann.
die funktion heißt
zuf(unsigned int max)
ich hab nichtmal eine idee wo ich das einbauen könnte.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
unsigned int zuf(unsigned int max)
{
/* Erzeugung von Zufallszahlen im Bereich 0 < n <= max */
static int init=0;
unsigned int wert=RAND_MAX+1;
/* Damit nicht immer mit der gleichen Zahlenfolge begonnen wird,
wird der Zufallszahlengenerator mit der Anzahl der Sekunden,
die seit dem 1.1.1970 0 Uhr vergangen sind, initialisiert.
*/
if(init == 0)
{
srand(time(NULL));
init = 1;
}
while (wert > max)
/* rand erzeugt Zahlen im Bereich von 0 --> RAND_MAX.
RAND_MAX ist auf der IBM = 32767.
*/
wert=rand();
return wert;
}
int Zufall = unsigned int zuf(unsigned int max); /*Zufallszahl*/
int GRatezahl, Ratezahl, count=0, erraten=0; /*Variablen*/
/*Ausgabe*/
printf("Bitte geben Sie die groestmoegliche Ratezahl ein: ", GRatezahl);
scanf("%i", &GRatezahl);
/*do while Schleife beginnt*/
do {
printf("Geben Sie nun bitte Ihren Tipp ab: ", Ratezahl);
scanf("%i", &Ratezahl);
/*Wenn, Zahl richtig geraten*/
if(Ratezahl==Zufall) {
erraten=1;
count++;
}
}
while((erraten != 1) && (count != 0));
if (erraten == 1)
{
printf("Mit %i Versuchen erraten!\n", count);
}
}
Zahlen.c: In function 'main':
Zahlen.c:39: error: expected expression before 'unsigned'
#include <stdio.h>
#include <stdlib.h>
#include "zuf.c"
int main() {
srand(time(NULL)); /*Zufallsgenerator*/
int GRatezahl, Ratezahl, count=0, erraten=0; /*Variablen*/
/*Ausgabe*/
printf("Bitte geben Sie die groestmoegliche Ratezahl ein: ", GRatezahl);
scanf("%i", &GRatezahl);
int Zufall = rand()&GRatezahl; /*Zufallszahl*/
/*do while Schleife beginnt*/
do {
printf("Geben Sie nun bitte Ihren Tipp ab: ", Ratezahl);
scanf("%i", &Ratezahl);
/*Wenn, Zahl richtig geraten*/
if(Ratezahl==Zufall) {
erraten=1;
count++;
}
/*Wenn, Zahl falsch geraten*/
else {
(Ratezahl>Zufall) ? printf("Die Zahl ist zu gross\n") : printf("Die Zahl ist zu klein\n");
count++;
}
}
while((erraten != 1) && (count != 0));
if (erraten == 1)
{
printf("Mit %i Versuchen erraten!\n", count);
}
}
printf("Bitte geben Sie die groestmoegliche Ratezahl ein: ");
scanf("%i", &GRatezahl);
Zufall = zuf(GRatezahl);
printf("Geben Sie nun bitte Ihren Tipp ab: ");
scanf("%i", &Ratezahl);
if(Ratezahl == Zufall) {
printf("richtig");
else {
printf("leider falsch");
}
srand(time(NULL));
srand(time(NULL));
Zufall = rand()%GRatezahl + 1;
#include <stdio.h>
#include <stdlib.h>
#include "zuf.c"
int main() {
int GRatezahl, Ratezahl, versuche=1, count=0, erraten=0; /*Variablen*/
/*Ausgabe*/
printf("Bitte geben Sie die groestmoegliche Ratezahl ein: ");
scanf("%i", &GRatezahl);
int Zufall = zuf(GRatezahl); /*Zufallszahl*/
/*do while Schleife beginnt*/
do {
printf("Das ist Ihr %i er Versuch\n", versuche);
printf("Geben Sie nun bitte Ihren Tipp ab: ");
scanf("%i", &Ratezahl);
versuche++;
/*Wenn, Zahl richtig geraten*/
if(Ratezahl==Zufall) {
erraten=1;
count++;
}
/*Wenn, Zahl falsch geraten*/
else {
(Ratezahl>Zufall) ? printf("Die Zahl ist zu gross\n") : printf("Die Zahl ist zu klein\n");
count++;
}
}
while((erraten != 1) && (count != 0));
if (erraten == 1)
{
printf("Mit %i Versuchen erraten!\n", count);
}
}