..\

Pierwsza praca w C#

Zadania z funkcji

Zad 4

Stwórzmy narzędzia

Ucząc się funkcji stwórz przydatne narzędzia do dalszej pracy w pisaniu programów konsolowych.
Stwórz następujące funkcje, które będą pobierały dane od użytkownika:
Napisz funkcję, która pobiera nazwe zmiennej. Prosi użytkownika o podanie liczby o zadanej nazwie, a następnie wczytuje ją i zwraca poprzez return.
int pobierzInt(string nazwa)
Napisz funkcję, która pobiera nazwę zmiennej. Prosi użytkownika o podanie napisu o zadanej nazwie, a następnie wczytuje ją i zwraca poprzez return.
int pobierzString(string nazwa)
W funkcji main przetestuj napisane przez Ciebie funkcje.
A generic square placeholder image with rounded corners in a figure.
Zdjęcie autorstwa Anna Shvets z Pexels
Zad 5

Stwórzmy precyzyjne narzędzia

Ucząc się funkcji stwórz przydatne narzędzia do dalszej pracy w pisaniu programów konsolowych.
Stworz następujące funkcje, które będą pobierały dane od użytkownika:

Napisz funkcje, która pobiera nazwę zmiennej, minimalna oraz maksymalna wartość pobieranej zmiennej.
Prosi użytkownika o podanie liczby o zadanej nazwie, a następnie wczytuje ją i sprawdza czy podana liczba mieści się w zadanym przedziale.
Jezeli liczba nie mieści się w zadanym przedziale informuje uzytkownika o podaniu nieprawidłowej wartości stosownym komunikatem, a następnie kolejny raz wczytuje liczbę. Proces ten powtarzaj aż nie uzyskasz od użutkownika poprawnej wartości.
Po uzyskaniu poprawnej wartości zwróć ją przez return.
int pobierzInt(string nazwa, int min, int max)
przykład użycia:
int r = pobierzInt("promień", 1,20);
podaj promień:aaa
podana wartosc jest nie prawidłowa
podaj promień:123
podana wartosc jest nie prawidłowa
podaj promień:12
do zmiennej r ustawia sie liczba 12
Napisz funkcję która, pobiera nazwę zmiennej, minimalna oraz maksymalna długość napisu.
Prosi uzytkownika o podanie napisu, wczytuje go i sprawdza czy jego długość mieści się w zadanym przedziale. Jezeli długość napisu nie miesci się w zadanym przedziale informuje uzytkownika o podaniu nieprawidłowej wartości stosownym komunikatem, a następnie kolejny raz wczytuje napis. Proces ten powtarzaj aż nie uzyskasz od użutkownika poprawnego napisu.
Po uzyskaniu poprawnego napisu zwróć go przez return.
int pobierzString(string nazwa, int min, int max)
W funkcji main przetestuj napisane przez Ciebie funkcje.
A generic square placeholder image with rounded corners in a figure.
Zdjęcie autorstwa Pavel Danilyuk z Pexels
Zad 7

Prostokąt

Napisz funkcję, która będzie rysowała prostokąt. Argumentami tej funkcji będą dwie liczby całkowite dodatnie - wysokość, oraz szerokość
Funkcja nie będzie zwracać żadnej wartości, tylko rysować w konsoli odpowiedni prostokąt.
Zwróć uwagę, że jeden znak na konsoli jest 2 razy wyższy niż szeroki. Aby uzyskać piksel wypisuj 2 dowolne znaki np "##" Przykładowo dla wysokości=5 i szeokości 3
######
######
######
######
######
A generic square placeholder image with rounded corners in a figure.
Zdjęcie autorstwa MHT z Pexels
Zad 6

Choinka

Napisz funkcję, która będzie rysowała choinkę. Argumentem tej funkcji będzie liczba całkowita dodatnia wysokością choinki (bez korzonka).
Funkcja nie będzie zwracać żadnej wartości, tylko rysować w konsoli choinkę.
Przykładowo dla wysokości=5
.....*
....***
...*****
..*******
.*********
.....#

dla wysokości=1
*
#

dla wysokości=3
..*
.***
*****
..#

Podpowiedz:
Do wypisywania zadanej ilości zadanych znaków możesz uzyć osobnej funkcji w której w pętli wypisujesz po 1 znaku.
A generic square placeholder image with rounded corners in a figure.
Zdjęcie autorstwa Vladislav Murashko z Pexels
Zad 8

Potęga

Napisz funkcję, która będzie obliczała potęgę liczby. Argumentami tej funkcji będą dwie liczby całkowite dodatnie - liczba potęgowana oraz potęga.
Funkcja będzie zwracać liczbę podniesioną do rządanej potęgi

Spróbówj wykonać funckję w wersji iteracyjnej (zwykłej) oraz w wersji wersji rekurencyjnej.

Pamiętaj, że w przypadku te go zadania rekurencja nie jest najlepszym wyborem. Wykonumemy ją w tym zadaniu jedynie w celach ćwiczebnych

Czy da się napisać tą funkcję w taki sposób, aby jej złorzoność obliczeniowa była mniejsza niż liniowa?
A generic square placeholder image with rounded corners in a figure.
Zdjęcie autorstwa Mikhail Nilov z Pexels