Úloha

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

Odpovědět
Bonny125
nováček
Příspěvky: 8
Registrován: 14 led 2021 08:28

Úloha

Příspěvek od Bonny125 »

Zdravím potrebujem pomoc s úlohou. :)

Potrebujem to v C.

Napíšte funkciu, ktorá vyráta druhú mocninu daného čísla. (napr. druhá mocnina čísla 5 je 5 × 5 = 25.)
S pomocou tejto funkcie vypíšte druhé mocniny čísel od 1 do 20.
Uživatelský avatar
LuCaCZ
Level 3.5
Level 3.5
Příspěvky: 929
Registrován: 21 bře 2011 00:02

Re: Úloha

Příspěvek od LuCaCZ »

Google nefunguje?
Hledej "sqrt()" a "for"
Bonny125
nováček
Příspěvky: 8
Registrován: 14 led 2021 08:28

Re: Úloha

Příspěvek od Bonny125 »

#include<stdio.h>
#include<conio.h>

int mocnina(int x) {

return x*x;

}

int main(){

int i = 0;

clrscr();

for(i = 1; i <= 20; i++) {

printf("%d^2 = %d\n",i ,mocnina(i));

}

getch();
return 0;
}

Ja to mám, ale neviem či dobre :D
Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7404
Registrován: 23 pro 2010 09:23

Re: Úloha

Příspěvek od faraon »

Zkompilovat to a spustit tě nenapadlo? ;)

Pár poznámek:

Ten kód máš stažený odněkud z netu, nebo ti conio.h poradili ve škole? To je totiž starožitnost z doby MS-DOSu a dnes (v tomhle století) už nemá v programu co pohledávat. Navíc tvůj program je s ním nepřenositelný, na jiném systému nebo s jiným překladačem nepůjde přeložit. Pro smazání obrazovky (pokud to opravdu musíš udělat!) použij buď multiplatformní knihovnu nebo jednoduché escape sekvence podle standardu ANSI, například:

Kód: Vybrat vše

printf ("\033c");
nebo komplexnější:

Kód: Vybrat vše

printf("\033[H\033[J");
Dnes už ANSI zvládají snad všechny existující terminály, i když ten windowsí pořád ještě nekompletně a chybně. Vyzkoušej to, u mě fungují obě. Další sekvence, například pro obarvení písma a jiné vopičky, najdeš zagooglením. Ale nepřeháněj to s nimi, někdy mohou být spíš na škodu.

To platí i pro funkci getch(), také není součástí normy. Kromě toho, je špatné když se program jen tak zastaví a čeká na pokyn uživatele, který ale neví co má v tu chvíli udělat. Samotný blikající kurzor - pokud se vůbec zobrazí - je zoufalý nedostatek informací, může znamenat že program pracuje nebo že se zasekl v nekonečné smyčce... Program musí uživatele vést (protože uživatel je ještě větší blbec než programátor) a napovídat mu, například takhle:

Kód: Vybrat vše

printf("Stiskni ENTER pro ukončení programu.");
getchar();


K formátování, nemíchej v odsazení mezery a tabulátory. Buď používej jedno nebo druhé ale nikdy oboje. Kromě toho, podle statistik programátoři používající mezery mívají vyšší plat než ti tabulátoroví, nikdo neví čím to je, ale je to tak. Také se používá vertikální odsazení, například mezi jednotlivými souvisejícími bloky kódu uvnitř funkce jeden prázdný řádek, mezi funkcemi tři prázdné řádky. Ono to dost zvyšuje přehlednost.

A ještě pár detailů, mezi příkazem a závorkou se dělá mezera: for (;;), naopak mezi názvem funkce a závorkou se NEdělá mezera: int main(void). To void znamená že funkce má prázdný vstup, je to informace pro překladač že nepotřebuje žádné argumenty.

P.S. Doufám že tohle není všechno co ses za tenhle školní rok naučil, takovýhle úkol bych čekal někdy v říjnu, maximálně v listopadu, ne dva měsíce před prázninami :-o
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)
Bonny125
nováček
Příspěvky: 8
Registrován: 14 led 2021 08:28

Re: Úloha

Příspěvek od Bonny125 »

Neviem ako, čo myslíš vieš mi to prerobiť tak, aby bolo dobre ?
zeus
Elite Level 10.5
Elite Level 10.5
Příspěvky: 11139
Registrován: 16 úno 2012 10:56
Bydliště: Pankrac

Re: Úloha

Příspěvek od zeus »

Nepochybuji, ze faraon vie. A zaroven nepochybuji, ze ti to neprerobi, protoze by to nebylo vychovne. Spise te posune, trosku detailneji, nez LuCaCZ.
Prazaci jo ty se maj, az kdyz si me zavolaj..
Clorky
Moderátor / člen HW týmu
Příspěvky: 7032
Registrován: 23 kvě 2010 11:25
Bydliště: Moravskoslezský kraj

Re: Úloha

Příspěvek od Clorky »

Nikdo ti tady nebude zhotovovat domácí úkoly.

S čím konkrétně si nevíš rady?
Uživatelský avatar
faraon
Master Level 8.5
Master Level 8.5
Příspěvky: 7404
Registrován: 23 pro 2010 09:23

Re: Úloha

Příspěvek od faraon »

Zkusil jsi to zkompilovat a spustit? Sám uvidíš co ten program provádí a jak výsledek vypadá.

Napsal jsem ti konkrétní věci které bys (podle mého mínění) měl změnit, a také jsem napsal jak to máš provést. Prakticky ti stačí těmi řádky ode mne nahradit konkrétní řádky v programu.

Ještě jsem nezmínil jednu velmi užitečnou věc - komentáře. Nestyď se je používat, vytiskni si ten program na papír a ke každému řádku tužkou napiš co provádí. Pokud to nebudeš vědět, použij manuál nebo prostě zagoogli. Tak najdeš například funkci mazající obrazovku, kterou máš nahradit escape sekvencí.

Další informace najdeš tady: https://www.abclinuxu.cz/faq/aplikace/udelate-za-me-ukol Je to tam napsané lépe, než bych to vyjádřil já.
"Král Lávra má dlouhé oslí uši, král je ušatec!

(pravil K. H. Borovský o cenzuře internetu)
Odpovědět

Zpět na „Programování a tvorba webu“