Plik do pobrania

Transkrypt

Plik do pobrania
Podstawowe typy zmiennych
Typ
Rozmiar w bajtach
1
char
1
4
int
8
long long1
4
float
8
double
1
bool
Minimalny zakres
Kod ASCII znaku (liczba 0..255)
-2147483648…2147483647
-263...263-1
38
-3,4*10 …3,4*1038 (do 6 cyfr znaczących)
-1,7*10308…1,7*10308 (do 10 cyfr znaczących)
true, false
Przykłady Deklaracji zmiennych
int liczba
char znak
float ulamek
Zmienną podczas deklaracji można zainicjować początkową wartością, np.:
int lata=18;
double w=8.12;
char kod=’c’;
Instrukcje warunkowa if …else
Składnia instrukcji warunkowej:
if (wyrażenie) instrukcja1;
Jeśli występuje więcej niż jedno polecenie wówczas musimy je objęć nawiasami klamrowymi:
if (wyrażenie)
{
instrukcja1;
instrukcja2;
...
instrukcjan;
}
Złożona instrukcja warunkowa:
if (wyrażenie)
{
instrukcja1;
...
instrukcja;
}
else
{
instrukcja1;
...
instrukcjan;
}
UWAGA:
W C++ przyjmuje się, że 0 odpowiada fałszowi, a każda inna liczba odpowiada wartości logicznej
prawda.
Zatem instrukcja
if (a!=0)
równoważna jest instrukcji:
if (a)
1
Dla kompilatora g++ typ int i typ long zajmują 4 bajty. Typem całkowitym ośmiobajtowym jest long long
-1Rafaello
Zadania
Zadanie 1
SI
Dane są dwie liczby całkowite. Napisz program, który obliczy ich sumę i iloczyn.
Wejście
Pierwszy i jedyny wiersz wejścia zawiera dwie liczby całkowite z zakresu -32768..32767.
Wyjście
W pierwszym wierszu wyjścia należy zapisać sumę obu liczb, w wierszu drugim zakończonym znakiem nowej
linii ich iloczyn.
Przykład
Dla danych wejściowych:
14 9
poprawną odpowiedzią jest:
23
126
Zadanie 2
Trójkąt
Dana jest nieujemna liczba rzeczywista h. Napisz program, który wyznaczy pole powierzchni i obwód trójkąta
równobocznego o wysokości h.
Wejście
Pierwszy i jedyny wiersz wejścia zawiera nieujemną liczbę rzeczywistą h.
Wyjście
W pierwszym wierszu wyjścia należy zapisać pole powierzchni trójkąta równobocznego o wysokości h, w
wierszu drugim obwód tego trójkąta. Obie liczby powinny być wypisane z dokładnością do dwóch miejsc po
przecinku.
Przykład
Dla danej wejściowej:
5.00
poprawną odpowiedzią jest:
14.43
17.32
Zadanie 3
Koło
W pewne koło wpisano kwadrat, w który następnie ponownie wpisano koło. Otrzymano koło o polu
powierzchni S. Jaką długość ma obwód większego z kół?
Wejście
W pierwszym wierszu pliku wejściowego zakończonym znakiem nowej linii zapisano jedną dodatnią liczbę
rzeczywistą S.
Wyjście
W pierwszym i jedynym wierszu pliku wyjściowego należy zapisać długość obwodu większego z kół z
dokładnością do jednego miejsca po przecinku.
Przykład
Dla danej wejściowej:
3
poprawną odpowiedzią jest:
8.7
Zadanie 4
Odcinek
Dany jest odcinek o końcach w punktach A i B. Napisz program, który obliczy długość odcinka AB.
Wejście
Pierwszy wiersz wejścia zawiera dwie liczby rzeczywiste oddzielone pojedynczą spacją - współrzędne punktu
A. W wierszu drugim w taki sam sposób zapisano współrzędne punktu B.
Wyjście
W pierwszym i jedynym wierszu obliczoną odległość długość
-2Rafaello
Przykład
Dla danych wejściowych:
1 0
2 0
poprawną odpowiedzią jest:
1.0
Zadanie 5
3Liczby
Spośród trzech liczb całkowitych wybierz liczbę najmniejszą i liczbę największą.
Wejście
Pierwszy i jedyny wiersz wejścia zakończony znakiem nowej linii zawiera trzy liczby całkowite z zakresu 32768..32767 oddzielone pojedynczą spacją.
Wyjście
Pierwszy i jedyny wiersz wyjścia zakończony znakiem nowej linii powinien zawierać dwie liczby całkowite
oddzielone pojedynczą spacją - najmniejszą i największą z liczb.
Przykład
Dla danych wejściowych:
0 3 4
poprawną odpowiedzią jest:
04
Zadanie 6
ZeroLin
Znajdź miejsce zerowe funkcji f(x)=ax+b. Jeżeli funkcja jest rosnąca, w drugim wierszu wypisz większą z liczb
a,b, jeżeli jest malejąca - mniejszą. Jeżeli funkcja nie ma miejsc zerowych, wypisz NIE, jeżeli zaś ma ich
nieskończenie wiele, wypisz TAK.
Wejście
Pierwszy i jedyny wiersz zawiera dwie liczby rzeczywiste: a i b.
Wyjście
Jeżeli funkcja posiada jedno miejsce zerowe, w pierwszym wierszu wypisz je, w drugim, zakończonym
znakiem nowej linii: jeżeli funkcja jest rosnąca, większy z współczynników, jeżeli malejąca - mniejszą.
Wszystkie liczby wypisz z dokładnością do dwóch miejsc po przecinku. Jeżeli funkcja nie posiada miejsc
zerowych, w pierwszym i jedynym wierszu, zakończonym znakiem nowej linii, wypisz NIE, jeżeli zaś ma
nieskończenie wiele miejsc zerowych, wypisz TAK.
Przykład
Dla danych wejściowych:
10.05 0.12
poprawną odpowiedzią jest:
-0.01
10.05
Zadanie 7
Wyznacznik (zadanie będzie omawiane na zajęciach)
Napisz program, który korzystając z metody wyznaczników wyznaczy rozwiązanie układu dwóch równań
liniowych o dwóch niewiadomych x i y:
Wejście
Pierwszy wiersz wejścia zawiera trzy liczby rzeczywiste oddzielone pojedynczą spacją - współczynniki a, b i e
pierwszego z równań. W wierszu drugim zapisano współczynniki drugiego z równań c, d i f.
Wyjście
W pierwszym i jedynym wierszu pliku wyjściowego zakończonym znakiem nowej linii należy zapisać:
parę liczb rzeczywistych zapisanych z dokładnością do dwóch miejsc po przecinku i oddzielonych jedną
spacją, jeśli układ posiada dokładnie jedno rozwiązanie (jest oznaczony),
słowo TOZSAMOSC, gdy układ posiada nieskończenie wiele rozwiązań (jest nieoznaczony),
słowo SPRZECZNOSC, gdy układ nie posiada rozwiązań (sprzeczny).
-3Rafaello
Przykład
Dla danych wejściowych:
-4 -1 0
4 1 0
poprawną odpowiedzią jest napis: TOZSAMOSC
Zaś dla danych wejściowych:
2 1 4
-3 2 1
8
poprawną odpowiedzią jest: 1.00 2.00
7
6
Zadanie 8
Część wspólna odcinków
Napisz
program wyliczający część wspólną dwóch odcinków
równoległych do osi Y .
5
4
3
2
1
Wejście
0
Ax, Ay – współrzędna początku pierwszego odcinka
0
0,5
1
1,5
2
Bx, By – współrzędna końca pierwszego odcinka
Cx, Cy – współrzędna początku drugiego odcinka
Rysunek 1
Dx, Dy – współrzędna końca drugiego odcinka
Wszystkie współrzędne są całkowite i zawierają się w przedziale -32768..32767
Wyjście:
Długość nowego odcinka lub zero w przypadku, gdy odcinki są rozłączne lub mają 1 punkt wspólny.
Przykład:
8
Dla danych (rysunek 1):
7
Ax=2 Ay= 2, Bx=2, By= 5 i
6
Cx= 2 Cy=4, Dx=2, Dy=7
5
W wyniku powinniśmy otrzymać: 1
2,5
4
Dla danych (rysunek 2):
Ax=2 Ay= 2, Bx=2, By= 5 i
Cx= 3 Cy=4, Dx=3, Dy=7
W wyniku powinniśmy otrzymać: 0
3
2
1
0
0
1
2
3
4
Rysunek 2
Zadanie 9
Kinga i Kamil
Kinga i Kamil
nie mają jeszcze 18 lat, ale kto z nich jest starszy? Napisz program, który udzieli odpowiedzi na
to pytanie wykonując porównywanie dat.
Wejście
W pierwszym wierszu pliku wejściowego zapisano trzy liczby całkowite oddzielone pojedynczą spacją: dzień,
miesiąc i rok - datę urodzenia Kingi. W wierszu drugim zakończonym znakiem nowej linii zapisano w takim
samym formacie datę urodzin Kamila.
Wyjście
Pierwszy i jedyny wiersz wyjścia zakończony znakiem nowej linii powinien zawierać:
słowo KINGA, gdy starsza jest Kinga,
słowo KAMIL, gdy starszy jest Kamil,
słowo NIKT gdy oboje urodzili się w tym samym dniu.
Przykład
Dla danych wejściowych: 19 9 1995 18 3 1993
poprawną odpowiedzią jest napis: KAMIL
-4Rafaello

Podobne dokumenty