Samostatná domácí práce
Předmět: Algoritmizace
Název: Vlastnosti trojúhelníka
Vypracoval: Alexandr Slabý Třída: 2E
Datum o...
Zadání:
Sestavit algoritmus, který ze tří zadaných čísel urči:
Zda je možné sestrojit trojúhelník se stranami zadaných dél...
Vývojový diagram:
Úvodní výpisy
Zadání vstupů a,b,c
Možno
sestrojit?
–
m
+
Nelze sestrojit Rovno
stranný?
–
m
+
Rovnostran...
program R3U;
{$APPTYPE CONSOLE}
{Rozbor trojúhelníka
Program ze tri zadanych cisel urci:
Zda je mozne sestrojit trojuhelni...
Závěr:
Algoritmus splňuje všechny body zadání. Vývojový diagram by bylo možné nakreslit lépe,
pokud by se kreslil v progra...
Závěr:
Algoritmus splňuje všechny body zadání. Vývojový diagram by bylo možné nakreslit lépe,
pokud by se kreslil v progra...
Upcoming SlideShare
Loading in...5
×

Samostatná DomáCí PráCe Vzor

1,175

Published on

sdrg

Published in: Technology, Travel
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,175
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Samostatná DomáCí PráCe Vzor"

  1. 1. Samostatná domácí práce Předmět: Algoritmizace Název: Vlastnosti trojúhelníka Vypracoval: Alexandr Slabý Třída: 2E Datum odevzdání: 31.12.2005
  2. 2. Zadání: Sestavit algoritmus, který ze tří zadaných čísel urči: Zda je možné sestrojit trojúhelník se stranami zadaných délek Pokud ano, určí dále, zda trojúhelník bude rovnoramenný rovnostranný pravoúhlý obecný včetně možných kombinací. Algoritmus vyjádřit vývojovým diagramem a programem v DELPHI. Teoretický rozbor: Trojúhelník je možné sestrojit, pokud součet délek kterýchkoliv dvou stran je je větší, než strana třetí. Trojúhelník je rovnostranný, pokud jsou délky všech tří stran trojúhelníka stejné. Trojúhelník je rovnoramenný, pokud kterékoliv dvě strany jsou stejné a současně jiné než strana třetí. Trojúhelník je pravoúhlý, pokud pro něj platí pythagorova věta, tj. součet mocnin délek dvou stran je stejný jako mocnina délky třetí strany. Trojúhelník je obecný, pokud jej lze sestrojit a není ani rovnostranný, ani rovnoramenný, ani pravoúhlý. Mohou existovat následující možnosti, kombinace: • Nelze sestrojit • Rovnostranný • Rovnoramenný a nepravoúhlý, tj. jenom rovnoramenný • Rovnoramenný a pravoúhlý • Pravoúhlý a nerovnostranný, tj. jenom pravoúhlý • Obecný tj. lze sestrojit a není ani rovnostranný, ani rovnoramenný, ani pravoúhlý. Postup řešení: Algoritmus po zadání tří vstupních hodnot bude testovat možnosti v následujícím pořadí: 1. Sestrojitelnost 2. Rovnostrannost 3. Rovnoramennost 4. Pravoúhlost Pokud trojúhelník nebude možno sestrojit, nebude testovat nic dalšího. Pokud trojúhelník bude možno sestrojit, bude testovat rovnostrannost. Pokud trojúhelník bude rovnostranný, nebude testovat nic dalšího. Pokud trojúhelník nebude rovnostranný, bude testovat rovnoramennost. Pokud trojúhelník bude rovnoramenný, bude testovat pravoúhlost.
  3. 3. Vývojový diagram: Úvodní výpisy Zadání vstupů a,b,c Možno sestrojit? – m + Nelze sestrojit Rovno stranný? – m + Rovnostranný Rovnora menný? – m + Pravo úhlý? – m + Pravo úhlý? – m + Obecn ý Pravoúhlý, nerovnostr Rovnoramenný , nepravoúhlý Rovnoramenný a pravoúhlý Kone c Kone c Kone c
  4. 4. program R3U; {$APPTYPE CONSOLE} {Rozbor trojúhelníka Program ze tri zadanych cisel urci: Zda je mozne sestrojit trojuhelnik se stranami zadanych delek. Pokud ano, urci dale, zda trojuhelnik bude rovnoramenny rovnostranny pravouhly obecny vcetne moznych kombinaci} uses SysUtils; var a,b,c:real; {Strany trojuhelnika - zadava uzivatel} begin { TODO -oUser -cConsole Main : Insert code here } writeln('Program pro rozbor trojuhelnika'); writeln; {Pro prehlednost} write('Zadej delku prvni strany: '); readln(a); write('Zadej delku druhe strany: '); readln(b); write('Zadej delku treti strany: '); readln(c); If (a>(b+c)) or (b>(a+c)) or (c>(a+b)) then {Test sestrojitelnosti} writeln('Ze zadanych delek stran nelze sestrojit trojuhelnik') else If (a=b) and (b=c) then {Test rovnostrannosti} writeln('Trojuhelnik sestrojeny ze zadanych delek stran je rovnostranny') else If (a=b) or (b=c) or (a=c) then {Test rovnoramennosti} if ((a*a) = (b*b)+(c*c)) or ((c*c) = (b*b)+(a*a)) or ((b*b) = (a*a)+(c*c)) then {Test pravouhlosti} writeln('Trojuhelnik sestrojeny ze zadanych delek stran je rovnoramenny a pravouhly') else writeln('Trojuhelnik sestrojeny ze zadanych delek stran je rovnoramenny') else if ((a*a) = (b*b)+(c*c)) or ((c*c) = (b*b)+(a*a)) or ((b*b) = (a*a)+(c*c)) then {Test pravouhlosti} writeln('Trojuhelnik sestrojeny ze zadanych delek stran je pravouhly') else writeln('Trojuhelnik sestrojeny ze zadanych delek stran je obecny'); writeln; {Pro prehlednost} writeln('Konec programu. Po precteni stisknete ENTER pro ukonceni'); readln; end.
  5. 5. Závěr: Algoritmus splňuje všechny body zadání. Vývojový diagram by bylo možné nakreslit lépe, pokud by se kreslil v programu k tomu více určenému, než je WORD. Program by se dal vylepšit například kvalitnějším grafickým rozhraním. To však v konzolové aplikaci, která pracuje jen v textovém režimu nejde.
  6. 6. Závěr: Algoritmus splňuje všechny body zadání. Vývojový diagram by bylo možné nakreslit lépe, pokud by se kreslil v programu k tomu více určenému, než je WORD. Program by se dal vylepšit například kvalitnějším grafickým rozhraním. To však v konzolové aplikaci, která pracuje jen v textovém režimu nejde.

×