1. Napisz program wypisujący w kolejnych wierszach standardowego wyjścia pojedyncze słowa następującego napisu Bardzo dlugi napis. 2.

Podobne dokumenty
W rozdziale z rozwiązaniami prezentowane są zarówno rozwiązania w językuc,jakiwc++.wwypadkugdyrozwiązaniadanegozadaniawobu

Zadania z programowania

Zaprojektować i zaimplementować algorytm realizujący następujące zadanie.

1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci:

Zestaw egzaminacyjny

Pzetestuj działanie pętli while i do...while na poniższym przykładzie:

Napisz program wypisujący na standardowym wyjściu następujący napis: Napis zawierający różne dziwne znaczki // \ \$ &%.

KURS WSPOMAGAJĄCY PRZYGOTOWANIA DO MATURY Z MATEMATYKI ZDAJ MATMĘ NA MAKSA. przyjmuje wartości większe od funkcji dokładnie w przedziale

LISTA 5. C++ PETLE for, while, do while

Zadania język C++ Zad. 1. Napisz program wczytujący z klawiatury wiek dwóch studentów i wypisujący informację o tym, który z nich jest starszy.

Zadania do samodzielnego rozwiązania

utworz tworzącą w pamięci dynamicznej tablicę dwuwymiarową liczb rzeczywistych, a następnie zerującą jej wszystkie elementy,

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk

Zadania do wykonania. Rozwiązując poniższe zadania użyj pętlę for.

I. Podstawy języka C powtórka

Zestaw 1 Organizacja plików: Oddajemy tylko źródła programów (pliki o rozszerzeniach.adb)!!!

Zestaw 1-1 Organizacja plików: Oddajemy tylko źródła programów (pliki o rozszerzeniach.cpp)!!!

Zestaw 1 ZESTAWY A. a 1 a 2 + a 3 ± a n, gdzie skªadnik a n jest odejmowany, gdy n jest liczb parzyst oraz dodawany w przeciwnym.

4. Funkcje. Przykłady

do instrukcja while (wyrażenie);

WPROWADZENIE DO ALGORYTMÓW Zadania

Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011

Napisz program, który dla podanej na standardowym wejściu temperatury w stopniach Fahrenheita wypisze temperaturę w stopniach Celsjusza.


WHILE (wyrażenie) instrukcja;

1. Liczby wymierne. x dla x 0 (wartością bezwzględną liczby nieujemnej jest ta sama liczba)

Jarosław Wróblewski Matematyka Elementarna, zima 2013/14. Czwartek 21 listopada zaczynamy od omówienia zadań z kolokwium nr 2.

Inicjacja tablicy jednowymiarowej

Tablice są typem pochodnym. Poniżej mamy przykłady deklaracji różnych tablic:

Programowanie obiektowe - zadania

2. Tablice. Tablice jednowymiarowe - wektory. Algorytmy i Struktury Danych

Rekurencja (rekursja)

4. Postęp arytmetyczny i geometryczny. Wartość bezwzględna, potęgowanie i pierwiastkowanie liczb rzeczywistych.

Zestaw 2 Organizacja plików: Oddajemy tylko źródła programów (pliki o rozszerzeniach.cpp)!!!

Matematyka z kluczem. Szkoła podstawowa nr 18 w Sosnowcu. Przedmiotowe zasady oceniania klasa 7

Jarosław Wróblewski Matematyka Elementarna, zima 2014/15

Rozwiązanie. #include <cstdlib> #include <iostream> using namespace std;

Praca domowa nr 1. a a b a b ; b c. c a bc d ef gh. 2) Napisz kod sprawdzający poniższe warunki sformułowane w języku naturalnym:

Wymagania edukacyjne matematyka klasa 1 zakres podstawowy 1. LICZBY RZECZYWISTE

1 Powtórzenie wiadomości

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 26 marca kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 40

Jarosław Wróblewski Matematyka Elementarna, lato 2012/13. Czwartek 28 marca zaczynamy od omówienia zadań z kolokwium nr 1.

Podstawy Programowania C++

WYMAGANIA NA POSZCZEGÓLNE OCENY MATEMATYKA KL.VII

WHILE (wyrażenie) instrukcja;

Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Olimpiada O Diamentowy Indeks AGH 2017/18. Informatyka Etap III

Funkcje. Deklaracja funkcji. Definicja funkcji. Wykorzystanie funkcji w programie.

4. Napisz program wyznaczający wartość funkcji. f (x) = x cos x + e 4x 7. w zadanym punkcie.

Jarosław Wróblewski Matematyka Elementarna, zima 2012/13

Tablice są typem pochodnym. Poniżej mamy przykłady deklaracji różnych tablic:

Przypomnienie wiadomości dla trzecioklasisty C z y p a m i ę t a s z?

Liczby. Wymagania programowe kl. VII. Dział

> C++ dynamiczna alokacja/rezerwacja/przydział pamięci. Dane: Iwona Polak. Uniwersytet Śląski Instytut Informatyki

WYMAGANIA EDUKACYJNE Z MATEMATYKI dla klasy I ba Rok szk. 2012/2013

Wymagania edukacyjne z matematyki w klasie VII szkoły podstawowej

Język C, instrukcje sterujące (laboratorium)

Technikum Nr 2 im. gen. Mieczysława Smorawińskiego w Zespole Szkół Ekonomicznych w Kaliszu

PRZEDMIOTOWY SYSTEM OCENIANIA- MATEMATYKA KLASA 6. Rok szkolny 2012/2013. Tamara Kostencka

Ćwiczenie 3 z Podstaw programowania. Język C++, programy pisane w nieobiektowym stylu programowania. Zofia Kruczkiewicz

WYMAGANIA EDUKACYJNE - matematyka - poziom rozszerzony Dariusz Drabczyk

Lista 2 logika i zbiory. Zad 1. Dane są zbiory A i B. Sprawdź, czy zachodzi któraś z relacji:. Wyznacz.

Proste programy w C++ zadania

MATeMAtyka 1. Przedmiotowy system oceniania wraz z określeniem wymagań edukacyjnych. Zakres podstawowy i rozszerzony Klasa pierwsza

Przygotowanie do poprawki klasa 1li

Wymagania edukacyjne z matematyki na poszczególne do klasy VII szkoły podstawowej na rok szkolny 2018/2019

Klasa 1 technikum. Poniżej przedstawiony został podział wymagań na poszczególne oceny szkolne:

Wskaźniki i dynamiczna alokacja pamięci. Spotkanie 4. Wskaźniki. Dynamiczna alokacja pamięci. Przykłady

WYMAGANIA EDUKACYJNE Z MATEMATYKI KLASA VII

1. LICZBY RZECZYWISTE. Uczeń otrzymuje ocenę dopuszczającą, jeśli:

GRUPA ĆWICZENIOWA (ZAKREŚL ODPOWIEDNIĄ): MG8 MG13 MB13 MD13 BT13

Zajęcia 4 procedury i funkcje

Podstawy informatyki. Informatyka stosowana - studia niestacjonarne. Grzegorz Smyk. Wydział Inżynierii Metali i Informatyki Przemysłowej

C z y p a m i ę t a s z?

MATEMATYKA WYKAZ UMIEJĘTNOŚCI WYMAGANYCH NA POSZCZEGÓLNE OCENY DLA KLASY PIERWSZEJ

Technikum Nr 2 im. gen. Mieczysława Smorawińskiego w Zespole Szkół Ekonomicznych w Kaliszu

n, m : int; S, a, b : double. Gdy wartości sumy składowej nie można obliczyć, to przyjąć Sij = 1.03 Dla obliczenia Sij zdefiniować funkcję.

*W uproszczeniu: jest dziewięciu sędziów przyznających po dwie noty: za wartość techniczną i artystyczną (skala od 0.0 do 6.0)

Laboratorium nr 1. i 2.

Algorytm. a programowanie -

Lab 9 Podstawy Programowania

Podstawy Programowania Podstawowa składnia języka C++

WYMAGANIA EDUKACYJNE KLASA I Pogrubieniem oznaczono wymagania, które wykraczają poza podstawę programową dla zakresu podstawowego.

KURS MATURA ROZSZERZONA część 1

ALGORYTMY Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

1. LICZBY DZIAŁ Z PODRĘCZNIKA L.P. NaCoBeZu kryteria sukcesu w języku ucznia

Powtórzenie podstawowych zagadnień. związanych ze sprawnością rachunkową *

PROGRAMOWANIE W C++ ZADANIA

6. Pętle while. Przykłady

Instrukcje sterujące

Wymagania edukacyjne z matematyki

WYRAŻENIA ALGEBRAICZNE

Język C, tablice i funkcje (laboratorium, EE1-DI)

Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java

Jarosław Wróblewski Matematyka Elementarna, lato 2012/13. W dniu 21 lutego 2013 r. omawiamy test kwalifikacyjny.

WIOLETTA NAWROCKA nauczyciel matematyki w Zespole Szkół w Choczewie IDĘ DO GIMNAZJUM ZADANIA TESTOWE Z MATEMATYKI DLA UCZNIÓW KL. VI.

Złożoność obliczeniowa zadania, zestaw 2

KONKURS MATEMATYCZNY

Podstawowe typy zmiennych

Transkrypt:

1. Napisz program wypisujący w kolejnych wierszach standardowego wyjścia pojedyncze słowa następującego napisu Bardzo dlugi napis. 2. Napisz program, który wczytuje ze standardowego wejścia liczbę całkowitą i wypisuje ją na standardowym wyjściu. 3. Napisz program, który wczytuje ze standardowego wejścia liczbę wymierną i wypisuje ją na standardowym wyjściu 4. Napisz program, który wczytuje ze standardowego wejścia liczbę całkowitą i wypisuje na standardowym wyjściu liczbę o jeden większą. 5. Napisz program, który wczytuje ze standardowego wejścia trzy liczby całkowite i wypisuje na standardowym wyjściu ich średnią arytmetyczną. 6. Napisz program, który wczytuje ze standardowego wejścia liczbę wymierną x i wypisuje na standardowym wyjściu wartośd bezwzględną z x. 7. Napisz program, który wczytuje ze standardowego wejścia liczbę wymierną i wypisuje ją na standardowym wyjściu z dokładnością do dwóch miejsc po przecinku. 8. Napisz program, który wczytuje ze standardowego wejścia liczbę wymierną i wypisuje ją na standardowym wyjściu w notacji wykładniczej (czyli takiej, w której 0.2 to 2.0e1). 9. Napisz program, który wczytuje ze standardowego wejścia liczbę całkowitą n i wypisuje na standardowe wyjście wartośd bezwzględną z n. Do rozwiązania zadania nie używaj funkcji bibliotecznych za wyjątkiem operacji wejścia/wyjścia. 10. Napisz program, który wczytuje ze standardowego wejścia dwie liczby całkowite i wypisuje na standardowym wyjściu większą z nich (w przypadku gdy podane liczby są równe, program powinien wypisad którąkolwiek z nich). 11. Napisz program, który wczytuje ze standardowego wejścia trzy liczby całkowite i wypisuje na standardowym wyjściu największą z ich wartości (pamiętaj o przypadku gdy wszystkie podane liczby lub dwie z nich są równe). 12. Napisz program, który wczytuje ze standardowego wejścia dwie liczby całkowite i wypisuje tą o większej wartości bezwzględnej. 13. Napisz program obliczający pole trójkąta na podstawie wymiarów podanych przez użytkownika. Użytkownik powinien mied możliwośd podania długości podstawy i wysokości lub wszystkich boków trójkąta. 14. Napisz program, który wczytuje ze standardowego wejścia współczynniki układu dwóch równao liniowych z dwoma niewiadomymi i wypisuje na standardowym wyjściu rozwiązanie układu równao. W przypadku nieskooczonej liczby lub braku rozwiązao program powinien wypisad na standardowym wyjściu odpowiednią informację. 15. Napisz program, który wczytuje ze standardowego wejścia współczynniki równania kwadratowego z jedną niewiadomą i wypisuje na standardowym wyjściu wszystkie rozwiązania rzeczywiste tego równania lub odpowiednią informację w przypadku braku rozwiązao.

16. Napisz program, który w zależności od wyboru użytkownika wczytuje ze standardowego wejścia wymiary: kwadratu, prostokąta lub trójkąta i wypisuje na standardowym wyjściu pole figury o wczytanych wymiarach. 17. Napisz program kalkulator, który wykonuje wybraną przez użytkownika operacją arytmetyczną na dwóch wczytanych liczbach. Program powinien wczytywad dane ze standardowego wejścia i wypisywad wynik na standardowym wyjściu. 18. Pętle 19. Napisz program wczytujący ze standardowego wejścia dwie dodatnie liczby całkowite n i m, i wypisujący w kolejnych wierszach na standardowym wyjściu wszystkie dodatnie wielokrotności n mniejsze od m. 20. Napisz program wczytujący ze standardowego wejścia dwie dodatnie liczby całkowite n i m, i wypisujący na standardowym wyjściu m pierwszych wielokrotności liczby n. 21. Napisz program wczytujący ze standardowego wejścia trzy dodatnie liczby całkowite n, m i k, i wypisujący w kolejnych wierszach wszystkie wielokrotności n większe od m i mniejsze od k. 22. Napisz program, który wczytuje ze standardowego wejścia nieujemną liczbę całkowitą n i wypisuje na standardowym wyjściu liczbę n!. 23. Napisz program, który wczytuje ze standardowego wejścia nieujemną liczbę całkowitą n i wypisuje na standardowym wyjściu sumę kwadratów liczb od 0 do n, czyli wartośd 0 2 + 1 2 + 3 2 +... + n 2. 24. Napisz program, który wczytuje ze standardowego wejścia liczbę całkowitą n (n > 2) i wypisuje na standardowym wyjściu iloczyn liczb parzystych z zakresu od 2 do n (czyli 2 * 4 *... * n dla n parzystych i 2 * 4 *... * (n-1) w przeciwnym wypadku). Napisz program, który wczytuje ze standardowego wejścia dwie liczby całkowite n i m (zakładamy, że n < m) i wypisuje na standardowym wyjściu liczbę n *... * m. 25. Napisz program, który wczytuje ze standardowego wejścia nieujemną liczbę całkowitą n i wypisuje na standardowym wyjściu element ciągu Fibonacciego o indeksie n. 26. Napisz program, który wczytuje ze standardowego wejścia dodatnie liczby całkowite n i m, i wypisuje na standardowym wyjściu największy wspólny dzielnik tych liczb. 27. Napisz program, który wczytuje ze standardowego wejścia nieujemną liczbę n i wypisuje na standardowym wyjściu n. Program napisz bez użycia funkcji z biblioteki matematycznej. 28. Napisz program, który wczytuje ze standardowego wejścia dodatnią liczbę n i wypisuje na standardowym wyjściu sumę wszystkich liczb mniejszych od n, względnie pierwszych z n. 29. Napisz program, który wczytuje ze standardowego wejścia nieujemną liczbę całkowitą n i wypisuje na standardowym wyjściu wartośd 0! + 1! +... + n!. 30. Napisz program, który wczytuje ze standardowego wejścia liczbę n i wypisuje na standardowym wyjściu wszystkie trójki pitagorejskie (tj. trójki liczb całkowitych a, b, c takich, że a 2 + b 2 = c 2 ), składające się z liczb mniejszych od n.

31. Funkcje 32. Napisz program, który wczytuje ze standardowego wejścia liczbę całkowitą n i wypisuje na standardowe wyjście wartośd bezwzględną z n. Do rozwiązania zadania nie używaj funkcji bibliotecznych za wyjątkiem operacji wejścia/wyjścia. W programie użyj samodzielnie zaimplementowanej funkcji liczącej wartośd bezwzględną. 33. Napisz program, który wczytuje ze standardowego wejścia nieujemną liczbę całkowitą n i wypisuje na standardowym wyjściu liczbę n!. W programie użyj samodzielnie zaimplementowanej funkcji liczącej wartośd silni. 34. Napisz program, który wczytuje ze standardowego wejścia nieujemną liczbę całkowitą n (n > 2) i wypisuje na standardowym wyjściu największą liczbę k taką, że k dzieli n i k < n. Algorytm wyszukiwania liczby k spełniającej powyższe warunki umieśd w oddzielnej funkcji. 35. Napisz funkcję, która dostaje jako argument nieujemną liczbę całkowitą n i zwraca jako wartośd liczbę 2 n. 36. Napisz funkcję, która dostaje jako argument liczbę całkowitą n i zwraca jako wartośd liczbę 2 n. 37. Napisz funkcję, która dostaje jako argumenty nieujemne liczby całkowite n i m, z których co najmniej jedna jest różna od zera i zwraca jako wartośd n m. 38. Napisz funkcję, która dostaje jako argumenty liczby całkowite n i m, z których co najmniej jedna jest różna od zera i zwraca jako wartośd n m. 39. Napisz funkcję, która dostaje jako argumenty liczbę dodatnią n i zwraca jako wartośd n. Rozwiąż zadanie nie wykorzystując funkcji bibliotecznych. 40. Napisz funkcję, która dostaje jako argumenty liczbę całkowitą m (m > 1) oraz nieujemną liczbę n i zwraca jako wartośd m n. Rozwiąż zadanie nie wykorzystując funkcji bibliotecznych. 41. Napisz program, który wczytuje ze standardowego wejścia nieujemną liczbę całkowitą n i wypisuje na standardowym wyjściu sumę liczb mniejszych od n i zarazem względnie pierwszych z n. Algorytm wyliczania sumy podziel na dwie funkcje. 42. Napisz program, który wczytuje ze standardowego wejścia nieujemną liczbę całkowitą n i wypisuje na standardowym wyjściu następującą sumę: 1 + 2 + 3 +.. + n. Algorytm wyliczania sumy podziel na dwie funkcje. 43. Napisz funkcję, która dostaje jako argument dodatnią liczbę całkowitą n i wypisuje na standardowym wyjściu wszystkie możliwe rozkłady liczby n na sumy dwóch kwadratów dodatnich liczb całkowitych. Rozważ dwa przypadki: a. gdy a 2 + b 2 i b 2 + a 2 dla a 6= b traktujemy jako dwa równe rozkłady, b. gdy a 2 + b 2 i b 2 + a 2 traktujemy jako ten sam rozkład i wypisujemy tylko jedne z nich.

44. Napisz funkcję, która dostaje jako argument dodatnią liczbę całkowitą n i wypisuje na standardowym wyjściu wszystkie możliwe rozkłady liczby n na sumy kwadratów dodatnich liczb całkowitych. Rozważ dwa przypadki analogiczne do tych z poprzedniego zadania 45. Napisz funkcję, która dostaje jako argumenty dodatnie liczby całkowite n i m, i wypisuje na standardowym wyjściu wszystkie możliwe rozkłady liczby n na sumę dwóch dodatnich liczb całkowitych podniesionych do potęgi m. Rozważ dwa przypadki analogiczne do tych z poprzedniego zadania. 46. Napisz funkcję, która dostaje jako argumenty dodatnie liczby całkowite n i m, i wypisuje na standardowym wyjściu wszystkie możliwe rozkłady liczby n na sumę dodatnich liczb całkowitych podniesionych do potęgi m. Rozważ dwa przypadki analogiczne do tych z poprzedniego zadania. 47. Napisz funkcję, która wczytuje ze standardowego wejścia liczbę całkowitą i zwraca ją jako swoją wartośd. Dodatkowo funkcja powinna sumowad wszystkie dotychczas wczytane wartości i przy każdym swoim wywołaniu wypisywad na standardowym wyjściu ich aktualną sumę. 48. Napisz rekurencyjną funkcję, która dla otrzymanej w argumencie nieujemnej całkowitej liczby n zwraca jako wartośd n!. 49. Napisz rekurencyjną funkcję zwracającą dla otrzymanej w argumencie nieujemnej liczby całkowitej n wartośd elementu o indeksie n ciągu zdefiniowanego w następujący sposób: a 0 = 1; a n = 2 * a n-1 + 5 dla n > 0. 50. Napisz rekurencyjną funkcję zwracającą dla otrzymanej w argumencie nieujemnej liczby całkowitej n wartośd elementu o indeksie n ciągu zdefiniowanego w następujący sposób: a 0 = a 1 = 1; a n = a n-1 + 2 * a n-2 + 3 dla n > 1 51. Napisz rekurencyjną funkcję zwracającą dla otrzymanej w argumencie nieujemnej liczby całkowitej n wartośd elementu ciągu Fibonacciego o indeksie n. 52. Napisz rekurencyjną funkcję zwracającą dla otrzymanej w argumencie nieujemnej liczby całkowitej n wartośd elementu o indeksie n ciągu zdefiniowanego w następujący sposób a 0 = a 1 = 1; a n = a 0 + a 1 +... + a n-1 dla n > 1 53. Napisz funkcję rekurencyjną, która dla otrzymanej w argumencie nieujemnej liczby całkowitej n zwraca wartośd elementu o indeksie n ciągu zdefiniowanego w następujący sposób a 0 = a 1 = 1; a n = a n-1 + n dla n parzystych a n = a n-1 * n dla n nieparzystych. 54. Napisz funkcję rekurencyjną, która dla otrzymanej w argumencie nieujemnej liczby całkowitej n zwraca wartośd elementu o indeksie n ciągu zdefiniowanego w następujący sposób a 0 = a 1 = a 2 = 1; oraz dla k > 2 a 3*k = a 3*k-1 + a 3*k-2 ; a 3*k+1 = 5 * a 3*k + 4; a 3*k+2 = a 3*k+1. 55. Napisz funkcję rekurencyjną, która dla otrzymanej w argumentach pary nieujemnych liczb całkowitych n i m zwraca wartośd f (n, m) gdzie funkcja f jest zdefiniowana w następujący sposób: f (n, 0) = n; f (0, m) = m; f(n, m) = f (n-1, m) + f (n, m-1) + f (n-1, m-1) dla n, m > 0.

56. Napisz funkcję rekurencyjną, która dla otrzymanej w argumentach pary nieujemnych liczb całkowitych n i m zwraca wartośd f (n, m) gdzie funkcja f jest zdefiniowana w następujący sposób: f (n, 0) = n; f (n, m) = f (m, n); f (n, m) = n- m + f (n-1, m) + f (n, m-1) dla n >= m > 0. 57. Napisz rekurencyjną funkcję, która dostaje jako argumenty dwie dodatnie liczby całkowite n i m, i zwraca jako wartośd największy wspólny dzielnik tych liczb obliczony algorytmem Euklidesa. 58. Napisz funkcję, która dostaje jako argumenty nieujemne liczby całkowite n i m, z których co najmniej jedna jest różna od zera, i zwraca jako wartośd n m. Jeżeli drugi z argumentów nie zostanie podany, funkcja powinna zwrócid wartośd n 2. 59. Napisz funkcję, która dostaje jako argumenty pięd liczb całkowitych typu unsigned int i zwraca jako wartośd maksimum z podanych liczb. Funkcję napisz w taki sposób, żeby można było jej podad także mniejszą liczbę argumentów. 60. Napisz funkcję, która dostaje jako argumenty pięd liczb typu unsigned int i zwraca jako wartośd sumę podanych liczb. Funkcję napisz w taki sposób, żeby liczyła sumę także dwóch, trzech i czterech argumentów. 61. Napisz funkcję, która dostaje jako argumenty pięd liczb typu int i zwraca jako wartośd iloczyn podanych liczb. Funkcję napisz w taki sposób, żeby liczyła iloczyn także dwóch, trzech i czterech argumentów. 62. Napisz funkcję, która dla dwóch dodatnich całkowitoliczbowych argumentów m i n zwraca wartośd true jeżeli n dzieli m oraz false w przeciwnym wypadku. W przypadku podania jednego argumentu funkcja powinna sprawdzad czy podana liczba jest parzysta. 63. Napisz rodzinę dwuargumentowych funkcji pot, z których każda jako argumenty otrzymuje liczbę n i nieujemną liczbę całkowitą m typu unsigned int (zakładamy, że co najmniej jeden z argumentów jest różny od zera) i zwraca jako wartośd nm. Przeciąż funkcję pot dla n o typach: double, int, unsigned int. Wynik zwrócony przez każdą z funkcji pot powinien byd tego samego typu co n. 64. Wskaźniki i referencje 65. Napisz funkcję otrzymującą jako argumenty wskaźniki do dwóch zmiennych typu int, która zwraca jako wartośd mniejszą z liczb wskazywanych przez argumenty. 66. Napisz funkcję otrzymującą jako argumenty wskaźniki do dwóch zmiennych typu int, która zwraca jako wartośd wskaźnik na zmienną przechowującą mniejszą z liczb wskazywanych przez argumenty. 67. Napisz funkcję otrzymującą jako argumenty wskaźniki do dwóch zmiennych typu int, która zamienia ze sobą wartości wskazywanych zmiennych. 68. Napisz funkcję otrzymującą jako argumenty wskaźniki do dwóch zmiennych typu int, która zamienia ze sobą wartości wskazywanych zmiennych tylko wtedy, gdy wskazywana przez drugi argument zmienna jest mniejsza od zmiennej wskazywanej przez pierwszy argument. 69. Napisz funkcję, której argumentami są dwa wskaźniki do stałych typu int, zaś zwracaną wartością jest suma wartości zmiennych wskazywanych przez argumenty.

70. Napisz funkcję, której argumentami są n typu int oraz w wskaźnik do int, która przepisuje wartośd n do zmiennej wskazywanej przez w. 71. Napisz funkcję otrzymującą jako argumenty referencje do dwóch zmiennych typu int, która zamienia ze sobą wartości zmiennych, do których referencje dostaliśmy w argumentach. 72. Napisz funkcję otrzymującą dwa argumenty referencję a oraz wskaźnik b do zmiennych typu int, która zamienia ze sobą wartości zmiennych, do których wskaźnik i referencję dostała w argumentach. 73. Napisz bezargumentową funkcję, która rezerwuje pamięd dla pojedynczej zmiennej typu int i zwraca jako wartośd wskaźnik do niej. 74. Napisz bezargumentową funkcję, która rezerwuje pamięd dla pojedynczej zmiennej typu double i zwraca jako wartośd wskaźnik do niej. 75. Napisz funkcję, która dostaje jako argument dodatnią liczbę całkowitą n, rezerwuje w pamięci blok n zmiennych typu int i zwraca jako wartośd wskaźnik do początku zarezerwowanego bloku pamięci. 76. Napisz funkcję, która dostaje jako argument dodatnią liczbę całkowitą n, rezerwuje w pamięci blok n zmiennych typu double i zwraca jako wartośd wskaźnik do początku zarezerwowanego bloku pamięci. 77. Napisz funkcję o dwóch argumentach: wskaźnik na funkcję o jednym argumencie typu int zwracającą wartośd typu double oraz wartośd typu int, która zwraca wartośd funkcji otrzymanej w pierwszym argumencie na liczbie całkowitej podanej w drugim argumencie. 78. Napisz funkcję, która otrzymuje trzy argumenty: dwa wskaźniki na funkcje o jednym argumencie typu int zwracające wartośd typu int, wartośd n typu unsigned int, i zwraca true, jeżeli otrzymane w argumentach funkcje są równe dla wartości od 0 do n i false w przeciwnym wypadku. 79. Napisz funkcję, która dostaje dwa argumenty: wskaźnik na stałą typu int i wskaźnik na zmienną typu int, i przepisuje zawartośd stałej wskazywanej przez pierwszy argument do zmiennej wskazywanej przez drugi argument. 80. Napisz funkcję, która dostaje dwa argumenty: wskaźnik na stałą typu int i stały wskaźnik na zmienną typu int. I przepisuje zawartośd stałej wskazywanej przez pierwszy argument do zmiennej wskazywanej przez drugi argument. 81. Tablice jednowymiarowe 82. Napisz funkcję, która otrzymuje dwa argumenty: nieujemną liczbę całkowitą n oraz n-elementową tablicę tab elementów typu int i nadaje wartośd zero wszystkim elementom tablicy tab, zapisuje do kolejnych elementów tablicy wartości równe ich indeksom (do komórki o indeksie i funkcja ma zapisywad wartośd i),podwaja wartośd wszystkich elementów w tablicy tab, do wszystkich komórek tablicy tab wstawia wartości bezwzględne ich pierwotnych wartości.

83. Napisz funkcję, która otrzymuje dwa argumenty: dodatnią liczbę całkowitą n oraz n-elementową tablicę tab o elementach typu const int i zwraca jako wartośd średnią arytmetyczną elementów tablicy tab. 84. Napisz funkcję, która otrzymuje dwa argumenty: dodatnią liczbę całkowitą n oraz nelementową tablicę tab o elementach typu unsigned int i zwraca jako wartośd średnią geometryczną elementów tablicy tab. 85. Napisz funkcję, która otrzymuje jako argument liczbę całkowitą n (n > 3) i zwraca jako wartośd największą liczbę pierwszą mniejszą od n (do wyznaczenia wyniku użyj algorytmu sita Eratostenesa). 86. Napisz funkcję, która otrzymuje trzy argumenty: dodatnią liczbę całkowitą n oraz dwie n-elementowe tablice tab1, tab2 o elementach typu int i: przepisuje zawartośd tablicy tab1 do tablicy tab2, przepisuje zawartośd tablicy tab1 do tablicy tab2 w odwrotnej kolejności (czyli element tab1*0+ ma zostad zapisany do komórki tablicy tab2 o indeksie n-1). 87. Napisz funkcję, która otrzymuje cztery argumenty: dodatnią liczbę całkowitą n oraz trzy n-elementowe tablice tab1, tab2 i tab3 o elementach typu int, i: przypisuje elementom tablicy tab3 sumę odpowiadających im elementów tablic tab1 i tab2 (do komórki tablicy tab3 o indeksie i powinna trafid suma elementów tab1*i+ i tab2*i+), przypisuje elementom tablicy tab3 większy spośród odpowiadających im elementów tablic tab1 i tab2 (do komórki tablicy tab3 o indeksie i powinien trafid większy spośród elementów tab1*i+ i tab2*i+), przypisuje zawartośd tablicy tab1 do tablicy tab2, zawartośd tablicy tab2 do tablicy tab3 oraz zawartośd tablicy tab3 do tablicy tab1. 88. Napisz funkcję, która otrzymuje dwa argumenty: dodatnią liczbę całkowitą n oraz n-elementową tablicę tab o elementach typu int i: zwraca największą wartośd przechowywaną w tablicy tab, zwraca najmniejszą wartośd przechowywaną w tablicy tab, zwraca indeks elementu tablicy tab o największej wartości, zwraca indeks elementu tablicy tab o najmniejszej wartości, zwraca największą spośród wartości bezwzględnych elementów przechowywanych w tablicy tab, zwraca indeks elementu tablicy tab o największej wartości bezwzględnej. 89. Napisz funkcję, która otrzymuje dwa argumenty: dodatnią liczbę całkowitą n oraz dwie n-elementowe tablice tab o elementach typu double przechowujące n-wymiarowe wektory i zwraca jako wartośd iloczyn skalarny wektorów otrzymanych w argumentach. 90. Napisz funkcję, która otrzymuje dwa argumenty: dodatnią liczbę całkowitą n oraz n-elementową tablicę tab o elementach typu int i: odwraca kolejnośd elementów tablicy tab, przesuwa o jeden w lewo wszystkie elementy tablicy (tak, żeby wartośd elementu o indeksie n 1 znalazła się w elemencie o indeksie n 2, wartośd elementu o indeksie n 2 znalazła się w elemencie o indeksie n 3, zaś wartośd elementu o indeksie 0 w elemencie o indeksie n-1), przesuwa o jeden w prawo wszystkie elementy tablicy (tak, żeby wartośd elementu o indeksie 0 znalazła się w elemencie o

indeksie 1, wartośd elementu o indeksie 1 znalazła się w elemencie o indeksie 2, zaś wartośd elementu o indeksie n 1 w elemencie o indeksie 0), sortuje rosnąco elementy tablicy tab (porządkuje elementy przechowywane w tablicy w taki sposób aby ciąg tab*0+, tab*1+,...,tab*n1+ był ciągiem niemalejącym), sortuje malejąco elementy tablicy tab. 91. Napisz funkcję, która otrzymuje jako argument dodatnią liczbę całkowitą n, a następnie tworzy dynamiczną n-elementową tablicę o elementach typu int i zwraca jako wartośd wskaźnik do jej pierwszego elementu. 92. Napisz funkcję, która otrzymuje jako argument dodatnią liczbę całkowitą n, a następnie tworzy dynamiczną n-elementową tablicę o elementach typu double i zwraca jako wartośd wskaźnik do jej pierwszego elementu. 93. Napisz funkcję, która dostaje jako argument wskaźnik do jednowymiarowej dynamicznej tablicy o elementach typu int i zwalnia pamięd zajmowaną przez przekazaną w argumencie tablicę. 94. Napisz funkcję, która dostaje jako argument wskaźnik do jednowymiarowej dynamicznej tablicy o elementach typu double i zwalnia pamięd zajmowaną przez przekazaną w argumencie tablicę. 95. Napisz funkcję, która otrzymuje dwa argumenty: dodatnią liczbę całkowitą n oraz n-elementową tablicę tab o elementach typu double a następnie tworzy kopię tablicy tab i zwraca jako wartośd wskaźnik do nowo utworzonej kopii. 96. Napisz funkcję, która otrzymuje trzy argumenty: dodatnią liczbę całkowitą n oraz dwie tablice n-elementowe o elementach typu int przechowujące współrzędne wektorów i zwraca jako wartośd wskaźnik do pierwszego elementu nowo utworzonej tablicy przechowującej sumę wektorów otrzymanych w argumentach. 97. Napisz funkcję, która dostaje w argumentach dodatnią liczbę całkowitą n oraz n-elementową tablicę liczb całkowitych tab1 o elementach typu int i przepisuje do nowo utworzonej tablicy tab2 elementy tablicy tab1 o wartości różnej od zera. Rozmiar tablicy tab2 powinien byd równy liczbie niezerowych elementów tablicy tab1. Jako wartośd funkcja powinna zwrócid wskaźnik na pierwszy element tablicy tab2. 98. Napisy 99. Napisz funkcję wyczysc, która usuwa z tablicy przechowywany w niej napis (w sensie: umieszcza w niej poprawny napis o długości 0). 100. Napisz funkcję dlugosc, która jako argument otrzymuje napis i zwraca jako wartośd jego długośd. 101. Napisz funkcję porownaj, która jako argumenty otrzymuje dwa napisy i zwraca 1 gdy napisy są równe i 0 w przeciwnym przypadku. 102. Napisz funkcję, która jako argumenty otrzymuje dwa napisy i zwraca wartośd 1, gdy pierwszy napis jest wcześniejszy w kolejności leksykograficznej i 0 w przeciwnym przypadku. Zakładamy, że oba napisy składają się ze znaków typu char,

zawierają wyłącznie małe litery alfabetu łacioskiego, a system, na którym jest kompilowany i uruchamiany program, używa standardowego kodowania ASCII. 103. Napisz funkcję przepisz, która otrzymuje dwie tablice znaków i przepisuje napis znajdujący się w pierwszej tablicy do drugiej tablicy. Zakładamy, że w drugiej tablicy jest wystarczająco dużo miejsca. 104. Napisz funkcję kopiujn, która dostaje w argumentach dwie tablice znaków nap1, nap2 oraz liczbę n i przekopiowuje n pierwszych znaków z napisu przechowywanego w tablicy nap1 do tablicy nap2. W przypadku gdy napis w tablicy nap1 jest krótszy niż n znaków, funkcja powinna po prostu przepisad cały napis. Funkcja powinna zadbad o to, żeby na koocu napisu w tablicy nap2 znalazł się znak o kodzie 0. Zakładamy, że w docelowej tablicy jest wystarczająco dużo miejsca 105. Napisz funkcję sklej otrzymującą jako argumenty trzy tablice znaków i zapisującą do trzeciej tablicy konkatenację napisów znajdujących się w dwóch pierwszych tablicach (czyli dla napisów Ala m i a kota znajdujących się w pierwszych dwóch argumentach do trzeciej tablicy powinien zostad zapisany napis Ala ma kota ). Zakładamy, że w trzeciej tablicy jest wystarczająco dużo miejsca. 106. Napisz funkcję, która otrzymuje w argumencie napis i podmienia w nim wszystkie małe litery na duże litery. Zakładamy, że napis przechowywany jest w tablicy o elementach typu char, składa się wyłącznie z liter łacioskich i białych znaków, oraz że system,na którym jest kompilowany i uruchamiany program, używa standardowego kodowania ASCII. 107. Napisz funkcję wytnij, która dostaje jako argumenty napis oraz dwie liczby całkowite n i m, i wycina z otrzymanego napisu znaki o indeksach od n do m ( n 6 m). Otrzymany w argumencie napis może mied dowolną liczbę znaków (w tym mniejszą od n lub m) 108. Napisz funkcję wytnij2, która dostaje jako argument dwa napisy nap1 i nap2, i wycina z napisu nap1 pierwsze wystąpienie w nim napisu nap2. 109. Napisz funkcję wytnijzw, która dostaje jako argument dwa napisy nap1 i nap2, i wycina z napisu nap1 wszystkie znaki występujące także w napisie nap2 110. Napisz funkcję wytnijzn, która dostaje jako argument dwa napisy nap1 i nap2, i wycina z napisu nap1 wszystkie znaki niewystępujące w napisie nap2. 111. Napisz funkcję wytnijtm, która dostaje jako argument dwa napisy nap1 i nap2 o równej długości i wycina z napisu nap1 znaki równe znakom występującym na tym samym miejscu w napisie nap2 (znak o indeksie i usuwamy wtedy i tylko wtedy, gdy nap1[i]=nap2[i]). 112. Napisz funkcję godzina, która dostaje w argumentach trzy liczby całkowite godz, min i sek, zawierające odpowiednio godziny, minuty oraz sekundy, i zwraca jako wartośd napis zawierający godzinę w formacie godz:min:sek, w którym wartości poszczególnych pól pochodzą ze zmiennych podanych w argumentach. 113. Napisz funkcję godzina, która dostaje w argumentach trzy liczby całkowite godz, min i sek, zawierające odpowiednio godziny, minuty oraz sekundy, i zwraca jako

wartośd napis zawierający godzinę w formacie godz:min:sek, w którym wartości poszczególnych pól pochodzą ze zmiennych podanych w argumentach. 114. Napisz funkcję sklej, która dostaje w argumentach trzy napisy i zwraca jako wartośd napis powstały ze sklejenia napisów otrzymanych w argumentach. 115. Napisz funkcję sklej, która dostaje w argumentach trzy napisy i zwraca jako wartośd napis powstały ze sklejenia napisów otrzymanych w argumentach. 116. Napisz funkcję kopiuj, która dostaje jako argumenty napis oraz tablicę znaków i przepisuje napis do otrzymanej w argumencie tablicy znaków. 117. Napisz funkcję kopiuj, która dostaje jako argumenty napis oraz wskaźnik do napisu (czyli wskaźnik do wskaźnika), tworzy nową tablicę znaków, kopiuje do niej napis zawarty w pierwszym argumencie, i przypisuje wskaźnik do nowo utworzonej tablicy do zmiennej wskazywanej przez drugi argument. 118. Napisz funkcję, która dostaje w argumencie napis i zamienia wszystkie występujące w nim małe litery na odpowiadające im duże litery. 119. Napisz funkcję, która dostaje w argumencie referencję do napisu i zamienia wszystkie występujące w nim małe litery na odpowiadające im duże litery.