Dobrý den, potřebuji v céčku poradit
Jsou zadány údaje o dvou autech - u každého délka ujeté trasy a čas, za který tuto trasu ujelo. Program zjistí, které auto je rychlejší a o kolik km/h.
Myslím že to je s If a else. Nevím si rady, děkuji. Byl bych rád za rady.
Jazyk C-podmíněné příkazy-pomoc
Moderátor: Mods_senior
- Blitzkrieg
- Level 3.5

- Příspěvky: 680
- Registrován: 03 pro 2016 10:51
Re: Jazyk C-podmíněné příkazy-pomoc
A co neumíš - syntaxe? Samotný příklad je jednoduchý na pochopení...
Naposledy upravil(a) Blitzkrieg dne 23 led 2017 22:32, celkem upraveno 3 x.
Re: Jazyk C-podmíněné příkazy-pomoc
no nevím logiku toho příkladu. Jak mám zjistit jaké auto je rychlejsi a o kolik pomocí if a else
Re: Jazyk C-podmíněné příkazy-pomoc
Logika spočívá v tom, že využiješ znalosti fyziky a matematiky ze základní školy, a u každého auta vypočítáš jeho rychlost. Vzoreček jednotky rychlosti by ti mohl napovědět že půjde o jednoduché dělení.
Potom už si můžeš trochu víc pohrát, buď pomocí if porovnáš rychlosti a v jednotlivých větvích else vypočítáš jejich rozdíl, nebo si ten rozdíl spočítáš předem a z něj pomocí if a else odvodíš které auto bylo rychlejší. A nebo obojí, dá se to i zkombinovat.
A nezapomeň že výsledek může mít tři možnosti, buď je rychlejší první, nebo druhé, nebo jsou obě auta stejně rychlá!
Takže, jak daleko ses dostal? Už máš deklarované proměnné, načtená vstupní data, a dokážeš zapsat výraz který něco počítá? Ukaž co máš a s čím si nevíš rady, ale nechtěj aby někdo udělal celý úkol za tebe.
Potom už si můžeš trochu víc pohrát, buď pomocí if porovnáš rychlosti a v jednotlivých větvích else vypočítáš jejich rozdíl, nebo si ten rozdíl spočítáš předem a z něj pomocí if a else odvodíš které auto bylo rychlejší. A nebo obojí, dá se to i zkombinovat.
A nezapomeň že výsledek může mít tři možnosti, buď je rychlejší první, nebo druhé, nebo jsou obě auta stejně rychlá!
Takže, jak daleko ses dostal? Už máš deklarované proměnné, načtená vstupní data, a dokážeš zapsat výraz který něco počítá? Ukaž co máš a s čím si nevíš rady, ale nechtěj aby někdo udělal celý úkol za tebe.
"Král Lávra má dlouhé oslí uši, král je ušatec!
(pravil K. H. Borovský o cenzuře internetu)
(pravil K. H. Borovský o cenzuře internetu)
Re: Jazyk C-podmíněné příkazy-pomoc
No vytvořil jsem zatím toto.
1. možnost
#include<stdio.h>
void main()
{
float a, b, x, y;
printf("Tento program zjisti, ktere auto je rychlejsi a o kolik km/h\n"
"=======================================================\n\);
"zadejte rychlost 1. auta a = ");
scanf("%f", &a);
printf("zadejte rychlost 2. auta b = ");
scanf("%f", &b);
printf (Program zjisti, který automobil jel větší rychlostí);
if (a < b ) printf ("\nDruhé auto je rychlejsi.\n");
else ( a > b ) printf("\nPrvní auto je rychlejsí.\n");
"zadejte délku trasy 1. auta x = ");
scanf("%f", &a);
printf("zadejte délku trasy 2. auta y = ");
scanf("%f", &b);
printf (Program zjisti, který automobil ujel větší vzdalenost);
if (x < y ) printf ("\nDruhé auto ujelo větší vzdalenost.\n");
else ( x > y ) printf("\nPrvní auto ujelo větší vzdalenost.\n");
}
2 možnost
#include<stdio.h>
void main()
{
float a,b
printf ("Tento program zjisti ktere auto ujelo danou vzdalenost rychleji\n"
"=======================================================\n\);" "zadejte čas za který auto ujelo 1. auto danou vzdalenost a = " );
scanf("%f", &a);
printf("Zadejte čas za který ujelo 2. auto danou vzdalenost b = ")
scanf("%f", &b);
if (a < b ) printf ("("\nDruhé auto je rychlejsi.\n");
else ( a > b ) printf ("("\nPrvní auto je rychlejsi.\n");
}
1. možnost
#include<stdio.h>
void main()
{
float a, b, x, y;
printf("Tento program zjisti, ktere auto je rychlejsi a o kolik km/h\n"
"=======================================================\n\);
"zadejte rychlost 1. auta a = ");
scanf("%f", &a);
printf("zadejte rychlost 2. auta b = ");
scanf("%f", &b);
printf (Program zjisti, který automobil jel větší rychlostí);
if (a < b ) printf ("\nDruhé auto je rychlejsi.\n");
else ( a > b ) printf("\nPrvní auto je rychlejsí.\n");
"zadejte délku trasy 1. auta x = ");
scanf("%f", &a);
printf("zadejte délku trasy 2. auta y = ");
scanf("%f", &b);
printf (Program zjisti, který automobil ujel větší vzdalenost);
if (x < y ) printf ("\nDruhé auto ujelo větší vzdalenost.\n");
else ( x > y ) printf("\nPrvní auto ujelo větší vzdalenost.\n");
}
2 možnost
#include<stdio.h>
void main()
{
float a,b
printf ("Tento program zjisti ktere auto ujelo danou vzdalenost rychleji\n"
"=======================================================\n\);" "zadejte čas za který auto ujelo 1. auto danou vzdalenost a = " );
scanf("%f", &a);
printf("Zadejte čas za který ujelo 2. auto danou vzdalenost b = ")
scanf("%f", &b);
if (a < b ) printf ("("\nDruhé auto je rychlejsi.\n");
else ( a > b ) printf ("("\nPrvní auto je rychlejsi.\n");
}
- Blitzkrieg
- Level 3.5

- Příspěvky: 680
- Registrován: 03 pro 2016 10:51
Re: Jazyk C-podmíněné příkazy-pomoc
No ale to je blbost - ty přece máš vědět/zadat vzdálenost a čas a program zjistí, které auto je rychlejší. A ne že zadáš rychlost prvního a pak druhého auta, a program ti vypíše, jaké auto je rychlejší - to by bylo extra easy...
Navíc to používáš dvakrát proměnné "a" a "b" pro různé hodnoty - rychlost a vzdálenost.
Upozorňuji, že v céčku neumím, takže tam nemáš syntaxe a vynechal jsem i přiřazení typu k proměnným
Když to řeknu jednoduše, tak čas a dráhu pro jednotlivá auta víš, takže musíš akorát vypočítat rychlost jednotlivých aut a rozdíl mezi těmito 2 rychlostmi. Samotná podmínka je pak primitivní
Takže, vytvořme si třeba t1 a k ní přiřaď hodnotu času prvního auta (třeba 5 hodin - ale pouze číslo, bez textu!), poté vytvoř t2 a přiřaď k ní čas druhého auta
To samé platí i pro dráhu prvního (s1) a druhého auta (s2)
t1=####
t2=####
s1=####
s2=####
v1=s1/t1 //Tady máš samotný výpočet rychlostí 1. vozidla
v2=s2/t2 //Tady máš samotný výpočet rychlostí 2. vozidla
//Teď už stačí hodnoty v1 a v2 jen porovnat a víš, které auto je rychlejší. V zadání máš ale ještě za úkol zjistit, o kolik se rychlosti liší, takže bych samotnou podmínku ještě trochu upravil, jak vidíš dole...
//Tady pod tím je výpočet rozdílu mezi rychlostmi. (Pokud zná céčko něco jako absolutní hodnotu, tak ti stačí jen jeden "rozdilrychlosti" - tady jde o to, že pokud by to bylo jen v1-v2 a v1 bylo menší než v2, tak by se rozdíl napsal jako záporný - vyřešil jsem to takhle, ale je tu samozřejmě mnoho jiných možností ostatně jako v celém postupu řešení tohoto příkladu - faraon to napsal hezky...
rozdilrychlosti1=v1-v2
rozdilrychlosti2=v2-v1
//No a tady dole je samotná podmínka
if v1 > v2 "vypiš" 1. auto je rychlejší o rozdilrychlosti1 else "vypiš" 2. auto je rychlejší o rozdílrychlosti2
+ nesmíš samozřejmě zapomenout na to, že můžou mít obě auta stejnou rychlost. takže vytvoř ještě jednu podmínku.
if v1=v2 then "vypiš" Obě auta mají stejnou rychlost.
EDIT: Měl jsem špatně vzoreček (:-D), už je to opraveno...
Upozorňuji, že v céčku neumím, takže tam nemáš syntaxe a vynechal jsem i přiřazení typu k proměnným
Když to řeknu jednoduše, tak čas a dráhu pro jednotlivá auta víš, takže musíš akorát vypočítat rychlost jednotlivých aut a rozdíl mezi těmito 2 rychlostmi. Samotná podmínka je pak primitivní
Takže, vytvořme si třeba t1 a k ní přiřaď hodnotu času prvního auta (třeba 5 hodin - ale pouze číslo, bez textu!), poté vytvoř t2 a přiřaď k ní čas druhého auta
To samé platí i pro dráhu prvního (s1) a druhého auta (s2)
t1=####
t2=####
s1=####
s2=####
v1=s1/t1 //Tady máš samotný výpočet rychlostí 1. vozidla
v2=s2/t2 //Tady máš samotný výpočet rychlostí 2. vozidla
//Teď už stačí hodnoty v1 a v2 jen porovnat a víš, které auto je rychlejší. V zadání máš ale ještě za úkol zjistit, o kolik se rychlosti liší, takže bych samotnou podmínku ještě trochu upravil, jak vidíš dole...
//Tady pod tím je výpočet rozdílu mezi rychlostmi. (Pokud zná céčko něco jako absolutní hodnotu, tak ti stačí jen jeden "rozdilrychlosti" - tady jde o to, že pokud by to bylo jen v1-v2 a v1 bylo menší než v2, tak by se rozdíl napsal jako záporný - vyřešil jsem to takhle, ale je tu samozřejmě mnoho jiných možností ostatně jako v celém postupu řešení tohoto příkladu - faraon to napsal hezky...
rozdilrychlosti1=v1-v2
rozdilrychlosti2=v2-v1
//No a tady dole je samotná podmínka
if v1 > v2 "vypiš" 1. auto je rychlejší o rozdilrychlosti1 else "vypiš" 2. auto je rychlejší o rozdílrychlosti2
+ nesmíš samozřejmě zapomenout na to, že můžou mít obě auta stejnou rychlost. takže vytvoř ještě jednu podmínku.
if v1=v2 then "vypiš" Obě auta mají stejnou rychlost.
EDIT: Měl jsem špatně vzoreček (:-D), už je to opraveno...
Re: Jazyk C-podmíněné příkazy-pomoc
Díky za radu
-
- Podobná témata
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 2 Odpovědi
- 10236 Zobrazení
-
Poslední příspěvek od Dyonysos
-
- 5 Odpovědi
- 49197 Zobrazení
-
Poslední příspěvek od Tay
-
- 14 Odpovědi
- 12228 Zobrazení
-
Poslední příspěvek od belphegor666
-
- 2 Odpovědi
- 4263 Zobrazení
-
Poslední příspěvek od kurkisak
-
- 5 Odpovědi
- 3941 Zobrazení
-
Poslední příspěvek od petr22

