Podstawy Programowania

Transkrypt

Podstawy Programowania
Podstawy Programowania
laboratoria
lista zadań do laboratorium V
wersja 2013/14
Temat: Funkcje z argumentami (parametrami) i operacje na łańcuchach znaków.
Uwaga: Na stronie internetowej przedmiotu w dziale „harmonogram zajęć i treści zadań” znajdziesz pliki
wykonywalne (exe) pokazujące przykładowy efekt wykonania zadań z tej listy. W dziale „materiały
pomocnicze” znajdziesz link do „pomocy dla studentów” przydatnej w rozwiązywaniu zadań.
1. Definiowanie i wykorzystywanie własnych funkcji z parametrami przekazywanymi
przez wartość
Zadanie 1.
Działanie programu: Na prośbę programu użytkownik podaje trzy liczby. Następnie program wyświetla ich
średnią arytmetyczną.
Wymagania:
Liczby podane przez użytkownika mają być zapisane do zmiennych globalnych.
Wyliczenie średniej ma się odbywać w funkcji srednia(a,b,c), operującej na zmiennych
lokalnych a, b i c, które przy wywołaniu tej funkcji otrzymują wartości zmiennych
globalnych przechowujących podane liczby. Funkcja ma zwracać zmienną lokalną s i nie
może sama wykorzystywać zmiennych globalnych.
Plik z programem: lab5z1.exe
Zadanie 2.
Działanie programu: Na prośbę programu użytkownik podaje pięć liczb. Następnie program wyświetla ich
wartość minimalną i wartość maksymalną.
Wymagania:
Liczby podane przez użytkownika mają być zapisane do zmiennych globalnych.
Wyliczenie wartości minimalnej ma się odbywać w funkcji minimum(a,b,c,d,e),
operującej na zmiennych lokalnych a—e, które przy wywołaniu tej funkcji otrzymują
dostęp do wartości zmiennych globalnych przechowujących podane liczby. Funkcja ma
zwracać zmienną lokalną min i nie może sama wykorzystywać zmiennych globalnych.
Wyliczenie wartości maksymalnej ma się odbywać w funkcji maksimum(a,b,c,d,e),
operującej na zmiennych lokalnych a—e, które przy wywołaniu tej funkcji otrzymują
dostęp do wartości zmiennych globalnych przechowujących podane liczby. Funkcja ma
zwracać zmienną lokalną max i nie może sama wykorzystywać zmiennych globalnych.
Plik z programem: lab5z2.exe
2. Przekazywanie parametrów przez referencję i adres
Zadanie 3.
Działanie programu: Na prośbę programu użytkownik podaje pięć liczb. Następnie program wyświetla ich
wartość minimalną i wartość maksymalną.
Wymagania:
Liczby podane przez użytkownika mają być zapisane do zmiennych globalnych.
Wyliczenie wartości minimalnej ma się odbywać w funkcji minimum(a,b,c,d,e),
operującej na zmiennych lokalnych a—e, które przy wywołaniu tej funkcji otrzymują
przez referencję dostęp do zmiennych globalnych przechowujących podane liczby.
Funkcja ma zwracać zmienną lokalną min i nie może sama wykorzystywać zmiennych
globalnych.
Wyliczenie wartości maksymalnej ma się odbywać w funkcji maksimum(a,b,c,d,e),
operującej na zmiennych lokalnych a—e, które przy wywołaniu tej funkcji otrzymują
przez adres dostęp do zmiennych globalnych przechowujących podane liczby. Funkcja
ma zwracać zmienną lokalną max i nie może sama wykorzystywać zmiennych
globalnych.
Plik z programem: lab5z3.exe
3. Tworzenie własnych funkcji operujących na łańcuchach znaków
Zadanie 4.
Działanie programu: Na prośbę programu użytkownik podaje napis (łańcuch najwyżej 99 znaków), który
program umieszcza w tablicy znaków o rozmiarze 100. Następnie program zamienia
wszystkie małe litery na duże i w następnej linii wyświetla ten zmieniony napis.
Wymagania:
Zamiana małych liter na duże ma się odbywać w funkcji m_strupr(tab), otrzymującej
jako parametr adres pierwszej komórki tablicy (adres tablicy); ten sam adres ma być
zwracany.
Wskazówka:
Bezpośrednio po ostatnim znaku w tablicy musi znajdować się znak końca '\0'.
Aby pobrać napis ze spacjami, użyj funkcji gets().
Aby zamienić małe litery na duże, należy od ich kodów ASCII odjąć 32.
Plik z programem: lab5z4.exe
Zadanie 5.
Działanie programu: Na prośbę programu użytkownik podaje napis (łańcuch najwyżej 99 znaków), który
program umieszcza w tablicy znaków o rozmiarze 100. Następnie program
przekopiowuje zawartość tej tablicy do drugiej tablicy o rozmiarze 100 i wyświetla
zawartość tej drugiej tablicy w nowej linii.
Wymagania:
Przekopiowanie zawartości tablicy ma się odbywać w funkcji m_strcpy(z,do),
otrzymującej jako parametry adresy obu tablic; adres drugiej tablicy ma być
zwracany.
Wskazówka:
Bezpośrednio po ostatnim znaku w tablicy musi znajdować się znak końca '\0'. Dalszych
elementów tablicy nie ma sensu przekopiowywać. Aby pobrać napis ze spacjami, użyj
funkcji gets().
Plik z programem: lab5z5.exe
Zadanie 6.
Działanie programu: Program umieszcza w tablicy znaków napis „Ala ma kota, ktory ma psa.” i wyświetla go.
Następnie zamienia wszystkie wystąpienia „ma” na „od”, po czym w nowej linii
wyświetla zmieniony napis.
Wymagania:
Wyszukiwanie kolejnych wystąpień słowa „ma” i zastępowanie ich słowem „od” ma się
odbywać w funkcji zamien(tab,z,na), otrzymującej jako parametry adresy: tablicy
z napisem, tablicy ze słowem „ma” i tablicy ze słowem „od”; adres tablicy z napisem
(tab) ma być zwracany.
Wskazówka:
Bezpośrednio po ostatnim znaku w tablicy musi znajdować się znak końca '\0'.
Plik z programem: lab5z6.exe