| | |
| Stránka: 1 z 1
| [ Príspevkov: 11 ] | |
Autor | Správa |
---|
Registrovaný: 08.05.13 Prihlásený: 08.05.13 Príspevky: 5 Témy: 1 | Napísal 3_3: 08.05.2013 15:29 | |
|
prosím potrebujem pomoc s ulohou do školy máme príklady v programe turbo pascal
1. je dana postupnosť 15 nahodnych cisel, spocitajte kolko z nich je parnych. 2. vytvorte program na vypocitanie priemernej znamky ziakov zo slovenskeho jazyka. 0 a 6 ukonci nacitavanie znamky ziakov. na zaver sa vypise priemerna znamka zo slovenskeho jazyka. ziakov je 10. 3. vytvorte program na vypocet obvodu a obsahu stvorca, povrchu a objemu kocky
a potrebujem ich urobiť tak aby: -boli pomocou procedur a funkcii -v hlavnom programe bude len pomocou CASE monost vyberu niektoreho z tych troch programov, mozete si teda vyberať z moznosti a ked nejaku vyberiete vykona sa zadana procedura alebo funkcia -pri kazdej vetve budete mať aj moznost zadania pismenka, ak napr. zadame pismeno a, tak si znova mozeme vybrať vykonanie nejakehoprikladu, ak zadame pismeno b, program skončí. teda zapis bude asi nasleovný: if z=a then goto skok else if z=b then writeln (koniec programu); -v case pouzite aj vetvu else, ktora ponukne moznost skoku, ak sme stlacili napr ine cislo
prosím vás ak mi to dáky dobrý človek vie vypracovať ja som v tom uplne stratená ://
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | Napísal BX: 08.05.2013 15:36 | |
|
Pána, čo je tu toľko žien zrazu? Už tretia registrovaná behom troch dní a kvôli programovaniu... To má nejaká dievčenská trieda na priemyslovke záverečné práce, či čo? No každopádne celé ti to asi nikto nevypracuje (ibažeby tu bol nejaký zúfalý programátor, ktorý si pomyslí, že náhodná žena z fóra mu za vypracovanie spraví čo bude chcieť) Za celé zadanie ponúkni nejakú odmenu, alebo sa do toho pusti a môžme to tu poriešiť spolu. Ale s tým, že budeš mať aj ty nejakú iniciatívu a budeš sa tomu venovať Že si v tom úplne stratená? No podmienky očividne používať vieš, tak skús začať, alebo sa spýtaj, čo ti nie je jasné.
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 08.05.13 Prihlásený: 08.05.13 Príspevky: 5 Témy: 1 | Napísal autor témy 3_3: 08.05.2013 15:45 | |
|
no príklady vypracované mám lenže absolutne to neviem prerobiť do tých funkcíí :/
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | Napísal BX: 08.05.2013 15:52 | |
|
To je potom už ľahké Máš k dispozícií procedúry. Tie si môžeš predstaviť jednoducho ako "náhdrada za dlhší úsek kódu" Ak mám program, ktorý mi vie hľadať v 15ich číslach tie párne, tak zoberiem tie riadky, ktoré toto robia a jednoducho ich prasknem do procedúry. Tzn. že z kódu napr. Kód: Begin WriteLn( 'Nieco...' ); ReadLn( Nieco ); este nejaky vypocet... End.
urobím kód: Kód: procedure mojaProcedura; Begin WriteLn( 'Nieco...' ); ReadLn( Nieco ); este nejaky vypocet... End; { pozor tu je podkociarka! }
Begin { toto je ten hlavny begin } mojaProcedura; End.
A vykoná to úplne to isté. Akoby som skopíroval kód z procedúry a dal ho fyzicky tam, kde ju volám. Tu, myslím, budeš potrebovať len procedúry, funkcie asi veľmi nie. Možno na ten priemer, ak tam musí nejaká byť. To spravíme neskôr, keď tak.
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 08.05.13 Prihlásený: 08.05.13 Príspevky: 5 Témy: 1 | Napísal autor témy 3_3: 08.05.2013 15:59 | |
|
no tu mám príklad na ten priemer
program abc; uses crt; var znamka,pocet,sucet:integer; priemer: real; begin clrscr; writeln('Postupne zadavajte znamky ziakov, ukoncite zadanim 0 alebo 6.'); repeat readln(znamka); pocet:=pocet+1; sucet:=sucet+znamka; clrscr; until (znamka=0) or (znamka=6); priemer:=sucet/pocet; writeln ('Priemerna znamka zo slovenskeho jazyka je', priemer:0:2,'.'); readln; clrscr; writeln('Pre ukoncenie stlacte enter.'); readln; end.
ak je teda dobre môžeš mi to prerobiť cez funkcie?
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | Napísal BX: 08.05.2013 16:04 | |
|
Funkcia na to bude vyzerať takto: Kód: function spocitajPriemer : Real; var znamka,pocet,sucet:integer; priemer: real; begin clrscr; writeln('Postupne zadavajte znamky ziakov, ukoncite zadanim 0 alebo 6.'); repeat readln(znamka); pocet:=pocet+1; sucet:=sucet+znamka; clrscr; until (znamka=0) or (znamka=6); priemer:=sucet/pocet;
spocitajPriemer := priemer; { Toto je dlezite! } end.
Návratovú hodnotu funkcie musíš uložiť do premennej, ktorá má meno rovnaké, ako meno funkcie. Takáto premenná sa vytvorí automaticky (nemusíš ju deklarovať vo var) V kóde potom hodnotu priradíš premennej jednoducho piemer := spocitajPriemer; a môžeš ju veselo vypísať ako výsledok.
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 08.05.13 Prihlásený: 08.05.13 Príspevky: 5 Témy: 1 | Napísal autor témy 3_3: 08.05.2013 17:30 | |
|
može to byť tak?
program abc; uses crt; function spocitajPriemer : Real; var znamka,pocet,sucet:integer; priemer: real; begin clrscr; writeln('Postupne zadavajte znamky ziakov, ukoncite zadanim 0 alebo 6.'); repeat readln(znamka); pocet:=pocet+1; sucet:=sucet+znamka; clrscr; until (znamka=0) or (znamka=6); priemer:=sucet/pocet; spocitajPriemer := priemer; end; begin priemer := spocitajPriemer; writeln ('Priemerna znamka zo slovenskeho jazyka je', priemer:0:2,'.'); readln; clrscr; writeln('Pre ukoncenie stlacte enter.'); readln; end.
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | Napísal BX: 08.05.2013 17:34 | |
|
No ak to funguje, tak áno, však?
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 08.05.13 Prihlásený: 08.05.13 Príspevky: 5 Témy: 1 | Napísal autor témy 3_3: 08.05.2013 17:40 | |
|
no práveže neviem lebo moj windows alebo čo nieje kompatibilný s programom musím to písať len tak vo worde
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | Napísal BX: 08.05.2013 17:47 | |
|
Á, to je blbé, to nenapíšeš A mohlo ma to napadnúť, keď máš v názve témy turbo pascal, ten je moc starý. Stiahni si Free Pascal odtiaľto: http://www.freepascal.org/down/i386/win32-hungary.var alebo priamo ftp://ftp.hu.freepascal.org/pub/fpc/dis ... -win32.exePotom, keď si to nainštaluješ, nájdi si adresár, kde to je (typicky to bude niečo ako C:\FPC\2.6.2\bin\i386-win32 ) a nájdi tam fpc.exe Vytvor si zástupcu tohoto tam, kde máš ten svoj súbor s programom (napr. na ploche, alebo kdekoľvek, klikneš na to pravým, dáš Vytvoriť odkaz a ten tam premiestniš) Program následne skompiluješ tak, že ho chytíš myšou a normálne presunieš nad ikonku toho fpc.exe (odkazu!!!) a pustíš Vytvorí sa ti exe hneď pri tom.
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 06.04.10 Prihlásený: 18.02.14 Príspevky: 47 Témy: 2 |
A co takto? - nespravne vstupy (nie vsade) si osetri sama Kód: program ZADANIE; uses Crt; const generovani = 15; {pocet generovani pre prvu ulohu} pocet_ziakov = 10; {pocet ziakov pre priemerovanie} var priemer: array[1..pocet_ziakov] of Real; stlkla: Char; strana: Real;
function Parne_cisla(pocet: Byte):Byte; var cislo,parne,i: Byte; begin ClrScr; Randomize; parne := 0; for i := 1 to pocet do begin cislo := Random(100) + 1; Write(cislo,','); if (cislo mod 2) = 0 then inc(parne) end; WriteLn; Write('pocet parnych cisiel: '); Parne_cisla := parne; end;
procedure Priemerna_znamka(ziakov: Byte); var suma,pocet,i,znamka: Byte; begin for i := 1 to ziakov do begin ClrScr; pocet := 1; suma := 0; repeat Write('Zadaj ',pocet,'. znamku ',i,'. ziaka: '); ReadLn(znamka); if (znamka < 6) and (znamka > 0) then begin suma := suma + znamka; inc(pocet); end else WriteLn('ZLY VSTUP !!!'); until (znamka = 6); priemer[i] := suma / (pocet - 1); end; ClrScr; for i := 1 to ziakov do WriteLn('Priemer ',i,'. ziaka: ',priemer[i]:0:2); ReadLn; end;
function Obsah(strana: Real): Real; begin Obsah := strana * strana; end;
function Objem(strana: Real): Real; begin Objem := strana * strana * strana; end;
procedure Geometria(strana: Real); begin WriteLn('Obsah stvorca: ',Obsah(strana):0:2); WriteLn('Objem kocky so stranou stvorca: ',Objem(strana):0:2); ReadLn; end;
{ HLAVNY PROGRAM } BEGIN repeat ClrScr; WriteLn('1. parne cisla'); WriteLn; WriteLn('2. priemer znamok ',pocet_ziakov,'. ziakov (6 - koniec)'); WriteLn; WriteLn('3. obvod a obsah stvorca, kocky'); WriteLn; WriteLn('ESC - koniec'); stlkla := ReadKey; case stlkla of '1': begin WriteLn; Write('generovanie: ',Parne_cisla(generovani)); ReadLn; end; '2': Priemerna_znamka(pocet_ziakov); '3': begin ClrScr; Write('Zadaj velkost strany: '); ReadLn(strana); Geometria(strana); end; end; until stlkla = #27;
END.
|
|
| Stránka: 1 z 1
| [ Príspevkov: 11 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| Free Pascal a Turbo Pascal v Assembler, C, C++, Pascal, Java | 0 | 384 | 19.12.2014 13:18 Styracoz | | Turbo Pascal v Assembler, C, C++, Pascal, Java | 1 | 4158 | 01.09.2007 18:55 cr3at0r | | turbo pascal v Assembler, C, C++, Pascal, Java | 3 | 945 | 24.12.2007 23:00 TrSek | | turbo pascal 64 bit v Assembler, C, C++, Pascal, Java | 10 | 773 | 09.11.2011 8:56 coldak | | Turbo pascal na viste v Assembler, C, C++, Pascal, Java | 3 | 675 | 01.10.2008 16:47 molotow | | Turbo pascal na w7 x64 v Assembler, C, C++, Pascal, Java | 5 | 1356 | 11.04.2010 12:56 ado21 | | Kde si stiahnem program Turbo Pascal? v Assembler, C, C++, Pascal, Java | 9 | 1933 | 11.03.2024 7:41 tatko Tom | | Osetrenie vyjdenie z drahy (turbo pascal) v Assembler, C, C++, Pascal, Java | 11 | 778 | 14.12.2008 11:54 Blackshadow | | Turbo Pascal 7 na Win XP 32 v Assembler, C, C++, Pascal, Java | 1 | 535 | 09.12.2010 7:44 coldak | | tcom z turbo 2 na turbo 3 v Siete | 0 | 521 | 14.03.2011 18:56 labtec222 | | Turbo 3 v Sieťové a internetové programy | 9 | 359 | 28.01.2012 13:51 prekto | | MSI turbo v Notebooky a netbooky | 3 | 481 | 28.09.2008 13:47 Jaro | | Turbo boost v Intel - Integrated Electronics | 9 | 637 | 03.03.2016 22:59 FlanK3r | | Turbo Boost v Intel - Integrated Electronics | 1 | 443 | 30.03.2012 22:06 MichalkOOo | | Turbo 4 v Sieťové a internetové programy | 5 | 341 | 10.10.2011 19:13 nBXXL | | Turbo 3 v Siete | 8 | 809 | 30.06.2008 11:17 Skyro |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|