Zadania

Transkrypt

Zadania
Podstawy informatyki
Informatyka stosowana
- studia niestacjonarne
- Zajęcia 2
Grzegorz Smyk
Wydział Inżynierii Metali i Informatyki Przemysłowej
Akademia Górniczo–Hutnicza im. Stanisława Staszica w Krakowie
Informacje teoretyczne
Instukcje warunkowe.
- While,
- Do… while.
- For.
Pętla: WHILE
while (warunek)
{
// blok instrukcji;
}
Obliczana
jest
wartość
warunku,
jeśli
warunek wynosi 0 to blok instrukcji nie
jest wykonywany.
Jeśli warunek jest różny od 0 to blok
instrukcji
jest
wykonywany
dopóki
warunek ma wartość niezerową;
Pętla: DO .. WHILE
do {
// blok instrukcji
} while (warunek);
Najpierw wykonywany jest
blok instrukcji, a dopiero
potem sprawdzany jest
warunek.
Jeśli warunek jest prawdziwy to
wykonywany jest ponownie
blok instrukcji.
Pętla FOR
for (instr_ini; wyraz_warunk; instr_krok)
{
//instrukcja1
}
instr_ini
–
instrukcja
wykonywana
w
czasie
pierwszego
wykonywania
pętli
wyraz_warunk
–
wyrażenie
obliczane
w
czasie
każdej
iteracji
zmiennych (gdy jest równe
0 to pętla kończy swoje
działanie)
instr_krok – instrukcja
wykonywana
na
zakończenie każdego obiegu
pętli
Funkcje
Funkcje::Deklaracja, definicja użycie
Deklaracja funkcji:
• typ_zwracany nazwa_funkcji( argumenty );
Definicja funkcji:
typ_zwracany nazwa_funkcji( argumenty ) {
ciało funkcji
};
Funkcja jest to część programu, która możemy
wywołać w kodzie programu poprzez podanie
jej
nazwy
w programie oraz poprzez
(opcjonalne) przekazanie argumentów do
funkcji.
Uwaga!
Możliwa jest jednoczesna deklaracja z definicja
funkcji, ale musi się ona odbyć przed użyciem
funkcji w kodzie
Przekazywanie argumentów do funkcji
jest opcjonalne. Możliwe jest
również
przekazywanie
kilku
argumentów jednocześnie. By to
zrobić
należy
rozdzielić
jest
przecinkami. Przykład:
int funkcja(int arg1, int arg2);
Funkcje::Przeładowanie
• Może istnieć zdefiniowanych
wiele funkcji o tej samej
nazwie z różną liczbą
argumentów jednak ich
deklaracja ma być
jednoznaczna!
Tablice
Tablice i operacje na nich.
tablica statyczna jednowymiarowa:
typ_danych nazwa_tablicy[ilosc_elementów];
tablica statyczna dwuwymiarowa:
typ_danych nazwa_tablicy[l_wierszy][l_kolumn];
tablica dynamiczna jednowymiarowa:
typ_danych *nazwa_tablicy = new typ_danych [ilosc_elementów];
Do tablic możemy przypisywać elementy w momencie
jej inicjalizacji, jak również przy tablicach
statycznych możemy operować na wartościach
używając: cin / cout;
Tablice::Przykład użycia
Odwoływanie się do
elementów tablicy:
int tab[3] = { 1, 2, 3 };
Wartości:
tab[0] = 1;
tab[1] = 2;
tab[2] = 3;
Jeśli umiemy się odwołać
do elementu, możemy
wywołać na nim:
cin>>element;
cout<<element;
Zadania
Zadania:
1. Napisz program, który pozwala na wczytanie dwóch zmiennych z
klawiatury oraz wykona na nich proste operacje arytmetyczne przy
pomocy funkcji:
• Dodawanie
• Odejmowanie
• Mnożenie
• Dzielenie
• Modulo
Każda operacja ma być zawarta w osobnej funkcji oraz zostać
wywołana wewnątrz instrukcji warunkowej switch.
Funkcje mają być typu double.
Uwzględnij różnice typów zmiennych (dzielenie, modulo) oraz
warunek dzielenia przez 0.
Zadania:
2. Napisz program, w którym zaimplementowana będzie funkcja
umożliwiająca liczenie sumy cyfr składowych w podanej przez
użytkownika liczbie.
Suma powinna być zwrócona do funkcji main() oraz wyświetlona
na ekranie.
Program ma pytać czy zakończyć swoje działanie.
3. Napisz program, który przy pomocy funkcji umożliwi wypisywanie
wszystkich liczb z zakresu podanego przez użytkownika,
których suma cyfr jest równa podanej liczbie z klawiatury.
Dla liczby 27:
> 74772, > 55665, > 45990
Zadania
4. Zmodyfikuj program z poprzedniego zadania w taki sposób by
wyświetla wewnątrz funkcji main była również ilość liczb
wynikowych przy pomocy zmiennej przekazanej przez referencję
oraz zmienną statyczną lokalną wewnątrz funkcji.
5. Sprawdzenie czy podana liczba (int) jest palindromem.
Palindrom (gr. palindromeo – biec z powrotem) – to
wyrażenie brzmiące tak samo czytane od strony lewej do
prawej i od prawej do lewej.
Aby sprawdzić czy dane słowo jest palindromem należy
porównywać kolejne litery od końca oraz od początku –
pierwszą od początku porównujemy z ostatnią, drugą z
przedostatnią, itd.
Zadania:
6. Napisz program który wyświetli wszystkie dodatnie dzielniki
liczby podanej przez użytkownika, w przypadku braku dzielników
(poza 1 i samą sobą) na ekranie pojawia się komunikat, że jest to
liczba pierwsza.
7. Napisz program który do tablicy typu int umożliwi na wpisanie
100 liczb losowych, wykorzystaj bibliotekę time.h oraz funkcję
rand(), z zakresu podanego przez użytkownika.
Wypisz elementy tablicy oddzielone spacjami.
Posortuj tablicę korzystając z algorytmu sortowania bąbelkowego.
Zadania
8. Zmodyfikuj program
wyświetlone na ekranie
- parzyste,
- nieparzyste,
- podzielne przez 3.
z poprzedniego zadania by
były wypisane tylko liczby:
9. Korzystając z metody MonteCarlo oblicz wartość liczby PI
na podstawie stosunku pola kwadratu i wpisanego w niego
okręgu.
Program umożliwia wczytanie długości promienia okręgu.
- wykonaj obliczenia dla 10, 20, 100 iteracji (strzałów)
- wyświetl uzyskaną wartość i ilość iteracji jeżeli uzyskana
dokładność będzie do 4 miejsc po przecinku
Prezentacja udostępniona na licencji Creative Commons:
Uznanie autorstwa, Na tych samych warunkach 3.0.
Pewne prawa zastrzeżone na rzecz autorów. Zezwala się na
dowolne wykorzystywanie treści pod warunkiem wskazania
autorów jako właścicieli praw do prezentacji oraz zachowania
niniejszej informacji licencyjnej tak długo, jak tylko na utwory
zależne będzie udzielana taka sama licencja. Tekst licencji
dostępny jest na stronie:
http://creativecommons.org/licenses/by-sa/3.0/deed.pl

Podobne dokumenty