Ćwiczenie 1: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Aneczka (dyskusja | edycje)
Nie podano opisu zmian
Daniel-PW (dyskusja | edycje)
Nie podano opisu zmian
Linia 1: Linia 1:
==Mierzenie kątów w trójkącie==
{| border="0" cellpadding="4" width="100%"
\begin{exe}
|width="500px" valign="top"|[[Grafika:PS_M13_Slajd1.png|thumb|500px]]
Nie używając cyrkla ani linijki, zmierz wszystkie kąty w trójkącie i oblicz ich sumę.
|valign="top"|
\end{exe}


\begin{sol}
Kąty najlepiej mierzyć kątomierzem, a ich sumę obliczyć z pomocą kalkulatora (na
pewno masz go w komórce). Powinno wyjść około 180 stopni.
\end{sol}


\begin{exe}
|}
Nie używając cyrkla ani linijki, zmierz wszystkie boki w trójkącie i oblicz ich sumę.
----


\ans{Boki najlepiej zmierzyć ekierką, a ich sumę obliczyć z pomocą kalkulatora (na
{| border="0" cellpadding="4" width="100%"
pewno masz go w komórce). Powinno wyjść około 180 mm.}
|width="500px" valign="top"|[[Grafika:PS_M13_Slajd2.png|thumb|500px]]
|valign="top"|


\ans{Szybszy sposób to namówić młodszego brata.}


\end{exe}
|}
----


\begin{exe}
{| border="0" cellpadding="4" width="100%"
Czy każdy trójkąt jest prostokątny?
|width="500px" valign="top"|[[Grafika:PS_M13_Slajd3.png|thumb|500px]]
|valign="top"|


\hint{Rozejrzyj się po okolicy}


\ans{Zapytaj starszego młodszego brata.}
|}
----


\ans{Szybszy sposób to namówić młodszego brata.}
{| border="0" cellpadding="4" width="100%"
|width="500px" valign="top"|[[Grafika:PS_M13_Slajd4.png|thumb|500px]]
|valign="top"|


\end{exe}


==Czy dany trójkąt jest prostokątny?==
|}
==Kilka programów, które nie liczą pola trójkąta==
----
Ale zacznijmy od algorytmu. Algorytmy zapisujemy w pseudo-C.


\subsubsection{Prosty algorytm}
{| border="0" cellpadding="4" width="100%"
\begin{alg}[title={Jak zmierzyć coś}]
|width="500px" valign="top"|[[Grafika:PS_M13_Slajd5.png|thumb|500px]]
for i = 1..n
|valign="top"|
{
sprawdź, co da się zmierzyć;
if (da się zmierzyć)
zmierz;
else
break;
}
\end{alg}


\subsubsection{Program w C}
<span id="sec:program_w_C" \>
\begin{C}[label={code:hello},title={Hello world}]
int main(void)
{
return(0);
}
\end{C}


|}
----


Jak widać, krótki program w C możemy napisać, korzystając z jednej funkcji
{| border="0" cellpadding="4" width="100%"
\lstC!main()!.  
|width="500px" valign="top"|[[Grafika:PS_M13_Slajd6.png|thumb|500px]]
|valign="top"|


\subsubsection{Program w Pascalu}
\begin{pas}
function main(a: integer): real;
begin
{ jakoś dziwnie }
main := 0.0;
ennd
\end{pas}


|}
----


\subsubsection{Program w MATLABie/Octave}
{| border="0" cellpadding="4" width="100%"
\begin{oct}
|width="500px" valign="top"|[[Grafika:PS_M13_Slajd7.png|thumb|500px]]
for i=1:n
|valign="top"|
y = A\b; % to jest po prostu inny zapis <math>y = A^{-1}b</math>
end
\end{oct}
 
\subsubsection{Program w C++}
 
Jak zobaczymy poniżej, nasz program w C++ niczym nie różni się od programu w C,
[[#sec:program_w_C]]
\begin{CPP}
int main(void)
{
return(0);
}
\end{CPP}
 
A może by tak skoczyć do \link{thm:pitagoras}{Twierdzenia Pitagorasa}?
 
Albo do kodu \link{code:hello}{Hello World w C}?

Wersja z 11:14, 9 sty 2007