Lab 06 Instrukcje sterujace id Nieznany

background image

06

Metodyka i techniki programowania
Instrukcje sterujące w C
Jacek Dańda na podstawie lab. W. Szmuca

Ćwiczenie 1. Instrukcja switch

1. Zaimplementuj kod

/* TODO: wczytanie zmiennych "lArgument", "operator", "pArgument" (%f%c%f) */

switch (expression)

{
case '+':

printf("%f+%f=%f\n", lArgument, pArgument, lArgument + pArgument);
break;

case '-':

printf("%f-%f=%f\n", lArgument, pArgument, lArgument-pArgument);
break;

case '*':

printf("%f*%f=%f\n", lArgument, pArgument, lArgument*pArgument);
break;

case '/':

printf("%f/%f=%f\n", lArgument, pArgument, lArgument/pArgument);
break;

default:

printf("Niepoprawny format.\n");

};

2. Co się stanie, gdy usunięte zostanie break?

Zadanie

Napisz program wypisujący nazwy pór roku w zależności od numeru wprowadzonego miesiąca.
W przypadku, gdy miesiąc może należeć do różnych pór roku rozstrzyganie na podstawie
pobranego numeru dnia tego miesiąca..

Ćwiczenie 2. Pętla while.

1. Zaimplementuj kod:

srand(time(NULL));

short propozycja, wylosowana=rand()%100;

do

{

printf("Wpisz liczbe: ");
scanf("%hd", &propozycja);
if (propozycja>wylosowana) printf("Zbyt duza liczba\n");
if (propozycja<wylosowana) printf("Zbyt mala liczba\n");

} while (propozycja!=wylosowana);

printf("Zgadza sie!\n");

2. Przed pętlą dodaj:

if (propozycja<0 || propozycja>99)
{
printf("Liczba poza zakresem 0-99.\n");
continue;/* przejdz do warunku petli */
};

Sprawdź działanie programu po wpisaniu niepoprawnej wartości.

3. Zamień continue na break. Sprawdź działanie programu.
4. Zmień program tak, aby stosował pętlę while zamiast do/while.

background image

Ćwiczenie 3. Pętla for.

1. Zaimplementuj kod:

/* TODO: wczytywanie zmiennej "n" */

unsigned indeks, silnia=1;

for (indeks=2; indeks<=n; indeks++)

{

silnia*=indeks;

};

2. Zamień indeks++ na ++indeks, czy to coś zmienia?
3. Zmień program tak, aby obliczał liczbę Eulera przy pomocy wzoru:

n

wczytuj z konsoli.

Zadanie

Napisz program, który wyświetli przebieg ustalonej funkcji (np. sinus) za pomocą symboli *.

Ćwiczenie 4. Operatory binarne.

1. Zapisz poniższy kod w pliku bitowe.c:

/* TODO: wczytywanie zmiennej "nieujemna" (unsigned) */

short indeks;
printf("%u w zapisie binarnym: ", nieujemna);

for (indeks=31; indeks>=0; indeks--)
{

printf("%d", (nieujemna>>indeks)%2);
if (indeks%4==0) printf(" ");
if (indeks%8==0) printf(" ");

};

Sprawdź działanie programu oryginalnego oraz po usunięciu nawiasów zawierających
operację przesunięcia bitowego.

2. Używając powyższego programu (lub jego modyfikacji) wypisz więcej bitów niż wynosi

wielkość wypisywanego typu. Co można wywnioskować z otrzymanego wyniku?

3. Zmodyfikuj program tak, aby wyświetlał również reprezentację bitową liczb ujemnych.
4. Wykorzystując przedstawiony w punkcie 1. algorytm sprawdź działanie pozostałych

operatorów bitowych.

Zadanie

Napisz program, który rozkłada liczbę na bity z wykorzystaniem przesunięcia bitowego w lewo.


Wyszukiwarka

Podobne podstrony:
Lab ME MS instrukcja 2012 E id Nieznany
Lab ME TR instrukcja 2012 E id Nieznany
Lab ME MI2 instrukcja 2012 E id Nieznany
CA 6 instrukcja uzytkownika id Nieznany
Zenit 11 Instrukcja Obslugi id Nieznany
Instrukcja inwentaryzacyjna id Nieznany
06 Instrukcje sterujące C Pętle
cw 15 instrukcja kalibrator id Nieznany
Lab 07 Instrukcje sterujace w C
1 Instrukcje sterujace (materia Nieznany (2)
ASEM 51 instrukcja obslugi id 7 Nieznany
instrukcja skaner2448CUPro id 2 Nieznany
cwiczenieHP3 instrukcja v6 id 1 Nieznany
CA 5 instrukcja uzytkownika id Nieznany
Lab 2 Cwiczenia prolog listy id Nieznany
MZC 200 Instrukcja obslugi id 3 Nieznany
CA 6 instrukcja uzytkownika id Nieznany

więcej podobnych podstron