Lab 05 Obliczenia w C id 257534 Nieznany

background image

05

Metodyka i techniki programowania
Obliczenia w C
mgr inż. Wojciech Szmuc

1.Zaimplementuj kod:

/* TODO: wczytanie zmiennej "rzeczywista" *//* nalezy dopisac */
int calkowita=rzeczywista;
printf("%f - liczba ", rzeczywista);
if (rzeczywista==calkowita)/* operator porownania */
{
printf("calkowita");
printf("\n");
}
else
{
printf("rzeczywista\n");
};

1. Sprawdź co się stanie po wykasowaniu nawiasów { oraz } w powyższym kodzie.
2. Wykasuj linijkę zawierającą else oraz linijki poniżej. Sprawdź działanie programu.
3. Zamień == na = i sprawdź działanie programu – z czego ono wynika?
4. Dopisz ; na końcu linijki zawierającej warunek. Jak teraz działa program?
5. Linijkę zawierającą if zmodyfikuj w następujący sposób:

if (rzeczywista==calkowita && calkowita>0)/* warunki musza byc spelnione */

/* rownoczesnie */

oraz zamień prinrf("calkowita"); na printf("naturalna");. Sprawdź działanie programu.

6. Zmodyfikuj program tak, aby rozpoznawał liczby naturalne, całkowite oraz

rzeczywiste.

Zadanie

Napisz program, który sprawdzi, czy wpisany rok jest przestępny. Rok jest
przestępny jeżeli jest podzielny przez 4 oraz niepodzielny przez 100 lub jest
podzielny przez 400 (np. 1900 nie był przestępny natomiast 2000 był przestępny).

Ćwiczenie 2. Znaki oraz stałe łańcuchowe

1. Zaimplementuj:

char znak;/* zmienna przechowujaca znaki */
printf("Wpisz znak: ");
scanf("%c", &znak);
printf("Wpisano znak: %c\n", znak);

2. Zmodyfikuj program tak, aby wypisywał również kod ASCII wprowadzonego

znaku.

3. Zmień linijkę z deklaracją zmiennej na:

const char znak='a';

Spróbuj zmienić zawartość znak w programie.

Sprawdź, czy tak samo zachowa się stały wskaźnik oraz stały wskaźnik do stałej.

4. Zaimplementuj:

char *wLancuch="napis";/* wskaznik do stalej lancuchowej */
printf("\"wLancuch\" wskazuje na: \"%s\"", wLancuch);

5. Sprawdź rozmiar zmiennej wskaźnikowej wLancuch.

Czy zmiana długości łańcucha znaków wpływa na rozmiar zmiennej wskaźnikowej?

Czy zmiana typu zmiennej wskaźnikowej powoduje zmianę jej wielkości?

6. Spróbuj pobrać łańcuch do zadeklarowanej jak w punkcie 1. zmiennej.
7. Podglądnij skompilowany program w edytorze i wyszukaj w nim łańcuch napis lub

inny, jeżeli modyfikowana była wartość zmiennej wLancuch.

background image

Zastanów się nad otrzymanymi wynikami.

Zadanie

Napisz program, który obliczy miejsce (numer) wprowadzonej litery w alfabecie.
Program ma działać na literach dużych oraz małych. Należy uwzględnić możliwość
wprowadzenia innego znaku niż litera.

Ćwiczenie 3. Biblioteka math

1. 1.Zaimplementuj:

float y=pow(2, 5);/* exp power function */
printf("y=%f\n", y);

i sprawdź działanie programu.

2. Spróbuj zmodyfikować (i sprawdzić) kod tak, aby pobierał z konsoli podstawę oraz

wykładnik potęgi.

Dopisz linijkę #include <math.h> i spróbuj skompilować.

Spróbuj skompilować program z opcją -c (co oznacza ta opcja?).

Zastanów się na jakim etapie tworzenia programu wystąpił błąd.

Przeczytaj instrukcję funkcji pow (man pow).

Zastosuj się do zalecenia tam przedstawionego.

3. Dopisz kod umożliwiający przedstawienie wyniku działania odwrotnego wobec

przedstawionego w punkcie 1. tak aby uzyskać wartość wejściową

4. Sprawdź wyniki działania programu wpisując jako podstawę 2 a jako wykładnik: 1,

0.1, 0.01, 0.001, 0.0001, 0.00001, 0.000001, 0.0000001, 0.00000001, 0.000000001

5. Sprawdź wyniki działania programu z podstawą 2000 oraz ostatnimi dwoma

wykładnikami z poprzedniego punktu.

6. Zastanów się z czego wynikają otrzymane rezultaty.
7. Sprawdź jakie funkcje zawiera biblioteka math.
8. Zweryfikuj wartości zwracane przez te funkcje (na przykład monotoniczność w

okolicach ekstremów).

Zadanie

Napisz program, który oblicza moduł oraz argument główny liczby zespolonej.
Liczbę należy pobrać z konsoli (2 zmienne – x oraz y).
Liczbę zespoloną w postaci algebraicznej zapisuje się jako: z=x+y⋅i (interpretuje się
jako punkt o współrzędnych (x, y).

Moduł liczby zespolonej:

(odległość punktu (x, y) od początku układu

współrzędnych)

P

Argument główny liczby zespolonej gdy :

gdy y=0

gdy

,

nie ma okre

ślonej wartości.



Wyszukiwarka

Podobne podstrony:
Algorytmy obliczen id 57749 Nieznany
Oblicz (2) id 327340 Nieznany
CCNA4 lab 1 1 4a pl id 109119 Nieznany
CCNA4 lab 1 1 4b pl id 109120 Nieznany
platew obliczenia id 343774 Nieznany
Lab KN cw 5 id 258468 Nieznany
5 6 3 Lab Registry Backup id 40 Nieznany (2)
ei 2005 05 s022 id 154158 Nieznany
cw 05 instrukcja id 121376 Nieznany
GNS3 Lab Workbook v0 2 id 19267 Nieznany
ES lab uklad zaplonowy id 16347 Nieznany
lab 02 p
Lab technologii cw 4 id 258645 Nieznany
Obliczenia id 399360 Nieznany
26 05 2011 id 31262 Nieznany (2)
cw 05 formularz id 121375 Nieznany
Lab technologii cw 6 id 258649 Nieznany
lab 4 Narzedzia scierne id 257 Nieznany

więcej podobnych podstron