Witam!
Mam do napisania kilka małych programików w C++. Nigdy nie przepadałem za programowaniem więc proszę Was o pomoc.
Jestem pewny że dla osoby znającej ten język w stopniu chociaż pół zaawansowanym programiki te nie sprawią nawet najmniejszego problemu.
Poniżej podam zestawy programów które dano mi do napisania. Z każdego zestawu wystarczy napisać aby 4 programy. Z góry bardzo dziękuje za pomoc!
***********************************************
Zadania przygotowawcze z
programowania obiektowego
************************************************
Ćwiczone zagadnienia:
Wczytywanie danych z klawiatury z użyciem strumieni cin oraz i wypisywanie na ekran z użyciem strumienia cout.
************************************************** ************************************************** *************************************
Program I
Napisać program w języku C++, który wczytuje z klawiatury 3 liczby całkowite ( integer )
następnie wyświetla na ekranie ich sumę
Program II
Napisać program w języku C++, który wczytuje z klawiatury 3 liczby rzeczywiste ( float lub double ) a następnie wyświetla ich iloczyn na ekranie.
Przy pisaniu programu użyć cout , cin oraz w drugiej wersji scanf i printf
Program III
Napisać program w języku C++ wczytujący z klawiatury N liczb całkowitych. Wczytane liczby program ma umieszczać w tablicy o nazwie zest. N podawane jest z klawiatury z tym że nie przekracza 50. Wyświetlić na ekranie zawartość tablicy
Uwaga
Program ma zawierać dwie podfunkcje, jedna do wczytywania danych , druga do ich wyświetlania.
Program IV
Napisać program w języku C++ wczytujący z klawiatury łańcuch znaków. Wczytane znaki mają być umieszczone w tablicy lanc. Odwrócić kolejność znaków we wprowadzonym do tablicy łańcuchu znaków ( np używając funkcji strrev ) a następnie wyświetlić odwrócony łańcuch znaków na ekranie.
Program V
Napisać program w języku C++ pozwalający na wczytanie z klawiatury nazw wszystkich miesięcy w roku. Nazwy miesięcy mają być zestawione w tablicy łańcuchów o nazwie rokk Wyświetlić na ekranie zawartość tablicy rokk.
Program VI
Napisać program w języku C++ pozwalający na wczytanie danych osobowych pracownika z klawiatury. Dane te to: imię ; nazwisko ; dzień, miesiąc, rok urodzenia ; staż pracy, stanowisko. Dane powinny być zestawione w formie struktury ( struct ).
Wyświetlić na ekranie wprowadzone do struktury dane.
Program powinien zawierać podfunkcje do wczytywania danych i do wyświetlania danych.
Program VII
Wykorzystując funkcje z programu VI napisać program w języku C++ pozwalający na wczytanie danych osobowych dla N pracowników, gdzie N jest liczbą całkowitą nie większą niż 50. Dane powinny być zestawione w postaci tablicy struktur. Tablica musi nosić nazwę pracownicy . Wyświetlić dane wprowadzone do tablicy pracownicy.
Używając odpowiedniego formatowania strumienia cin zapewnić by wprowadzane łańcuchy znaków nie były dłuższe od odpowiadających im pól w strukturze.
Program VIII
Napisać program w języku C++ wczytujący z klawiatury 3 łańcuchy znaków oraz wyświetlający je na ekranie w podany niżej sposób. Do formatowania użyć funkcji setw
Sposób wyświetlania
a) Wyrównane do lewej
ALA
ALA MA
ALA MA KOTA
b) Wyrównane do prawej
ALA
ALA MA
ALA MA KOTA
Program IX
Napisać program w języku C++ wczytujący 3 liczby hexadecymalne z klawiatury oraz wyświetlający je raz jako hexadecymalne, następnie jako ósemkowe a na końcu jako decymalne. W trakcie pisania programu użyć funkcji setbase
Program X
Napisać program w języku C++ , wczytujący z klawiatury 3 liczby zmiennoprzecinkowe i wyświetlający ich pierwiastki z precyzją 5 cyfr po przecinku.
************************************************** ************************************************** ************************************************** **********************************
************************************************** ************************************************** ************************************************** **********************************
Ćwiczone zagadnienia:
Korzystanie z plików tekstowych i binarnych z użyciem podstawowych funkcji języka C++
Program I
Napisać program w języku C++, który tworzy nowy plik o nazwie out.txt i wpisuje do niego liczby 1 2 3 4 5 6 7 8 9 10. Jeśli plik o takiej nazwie istnieje należy skasować jego pierwotną zawartość
Program II
Napisać program w języku C++, który tworzy wpisuje do pliku o nazwie out.txt liczby 1 2 3 4 5 6 7 8 9 10. Jeśli plik o takiej nazwie istnieje nowa zawartość musi być dopisana na końcu pliku, jeśli plik nie istnieje ma zostać utworzony.
Program III
Napisać program w języku C++, który wpisuje do pliku o nazwie ciąg.txt kolejno, liniami elementy ciągu 1/1; 1/2 ; 1/3 ;1/4 ; 1/5 ... 1/N . Gdzie N jest wartością podawaną z klawiatury. Jeśli plik o takiej nazwie już istnieje należy skasować jego pierwotną zawartość.
Przykładowa zawartość pliku
1
0.5
0.3333333333333333
0.25
....
Program IV
Napisać program w języku C++ wczytujący z klawiatury łańcuch znaków i dopisujący go do pliku lancuchy.txt w nowej linii.
Program V
Napisać program w języku C++ , który otwiera plik o podanej z klawiatury nazwie oraz zlicza ile razy w tym pliku występują litery ‘a’
Program VI
Napisać program w języku C++ pozwalający na wczytanie danych osobowych pracownika z klawiatury. Dane te to: imię ; nazwisko ; dzień, miesiąc, rok urodzenia ; staż pracy, stanowisko. Dane powinny być zestawione w formie struktury ( struct ).
Dane ze struktury dopisać do pliku pracownik.txt
Program powinien zawierać podfunkcje do wczytywania danych i do wpisywania do pliku.
Program VII
Wykorzystując plik tworzony przez program VI napisać program w języku C++ przeszukujący plik i wyświetlający na ekranie dane pracownika o podanym z klawiatury nazwisku.
Program VIII
Napisać program w języku C++ który wpisuje do binarnego pliku o nazwie ciąg.bin kolejne wyrazy ciągu 1/(1+PI) ; 1/(2+PI) ; 1/(3+PI ) ... 1(N+PI). Gdzie PI =3.14 jest stałą matematyczną a N ilością wyrazów w ciągu wczytaną z klawiatury.
Program IX
Napisać program w języku C++ otwierający binarnie plik o nazwie podanej z klawiatury i wyliczający ile razy występuje w nim bajt o wartości decymalnej 127
Program X
Napisać program, który kasuje plik o podanej z klawiatury nazwie
Program XI
Napisać program, który zmienia nazwę pliku. Obydwie nazwy mają być wczytane z klawiatury.
************************************************** ************************************************** ************************************************** ***************************************
************************************************** ************************************************** ************************************************** ***************************************
Wykorzystywanie pętli for , while, do while.
Wykorzystywanie instrukcji warunkowych if, switch
Program I
Napisać program w języku C++, który wczytuje z klawiatury liczbę całkowitą oraz wyświetla informację czy jest ona parzysta czy nie.
Program II
Napisać program w języku C++, który wczytuje z klawiatury łańcuch znaków oraz wyświetla informację czy zawiera on duże litery czy nie.
Program III
Napisać program w języku C++, który wypełnia dwuwymiarową tablicę liczb rzeczywistych o nazwie funkcja o rozmiarach 100x200 wartościami funkcji f(x,y) = x2 + 2*x*y + y2 gdzie x, y są indeksami w tablicy.
Uwaga program zawiera dwie pętle zagnieżdżone
for ( ..... )
for ( .... )
{
}
Program IV
Napisać program w języku C++ wczytujący z klawiatury dwa łańcuchy znaków. Łańcuchy mają być umieszczone w dwu tablicach o nazwach Tab1 i Tab2. W trzeciej tablicy o nazwie Tab3 łańcuch znaków będący połączeniem obydwu wprowadzonych łańcuchów.
Program V
Napisać program który wczytuje z klawiatury liczby całkowite do tablicy tak długo aż nie wypełni się cała tablica lub nie zostanie wpisana liczba 127. Program napisać w 2 wersjach: z użyciem pętli for oraz z użyciem pętli while.
Program VI
Napisać program w języku C++ przekodowywujący wprowadzony łańcuch znaków na ciąg kresek i kropek zgodnie z zasadami alfabetu Morse’a. Program napisać w dwu wersjach z użyciem instrukcji switch oraz bez niej.
Program VII
Napisać program w języku C++ przekodowywujący ciąg kresek i kropek wpisany z klawiatury na litery zgodnie z zasadami alfabetu Morse’a.
Program VIII
Napisać program w języku C++ który wczytuje z klawiatury liczby do dwu macierzy 3x3 oraz dodaje macierze. Wypisuje na ekran macierz będącą wynikiem dodawania
Program musi zawierać podfunkcje do: wczytywania danych do macierzy, dodawania macierzy, wyświetlania macierzy
Program IX
Napisać program w języku C++ , który wczytuje macierz kwadratową o rozmiarze 5x5 z pliku tekstowego o podanej z klawiatury nazwie a następnie wyświetla sumę wyrazów z każdej kolumny.
Program X
Napisać program w języku C++, który odwraca kolejność liczb w tablicy liczb całkowitych. Rozmiar tablicy ma być podany z klawiatury ( nie większy niż 20 ) , z klawiatury mają być wprowadzone zestawione w tablicy liczby. Program ma wyświetlić wczytaną tablicę liczb oraz tablicę po zmianie kolejności.
************************************************** ************************************************** ************************************************** **************************************
************************************************** ************************************************** ************************************************** *************************************
Dynamiczna alokacja pamięci (new , delete ) i wskaźniki , referencje
Program I
Napisać program w języku C++, który alokuje pamięć na 50 liczb całkowitych. Następnie wypełnia je liczbami losowymi ( funkcja rand ). Po czym wyświetla zawartość tablicy oraz zwalnia pamięć. W programie napisać funkcję
void wypelnij ( int *table, int size );
wpisującą wartości losowe do tablicy
Program II
Napisać program w języku C++ który alokuje miejsce na tablicę dwuwymiarową o rozmiarach 50x20 oraz wypełnia ją w następujący sposób:
1 2 3 ... 50
2 3 4 ... 51
....
20 21 22... 70
Po wyświetleniu zawartości tablicy na ekran pamięć musi być zwolniona.
Program III
Napisać program w języku C++, który wypełnia dwuwymiarową tablicę liczb rzeczywistych o nazwie funkcja wartościami funkcji f(x,y) = x2 + 2*x*y + y2 gdzie x, y są indeksami w tablicy. Rozmiary tablicy mają być podane z klawiatury, pamięć na tablicę zaalokowana dynamicznie.
Uwaga program zawiera dwie pętle zagnieżdżone
for ( ..... )
for ( .... )
{
}
Program IV
Napisać program w języku C++ wczytujący z pliku tablicę liczb rzeczywistych. Format pliku jest następujący:
N M
w11 w12 w13 ... w1N
w21 w22 w23 ... w2N
....
wM1 wM2 wM3 ... wMN
N, M to rozmiary tablicy, wXY to wartości w zestawione w tablicy
Wczytane wartości mają być umieszczone w zaalokowanej dynamicznie tablicy
Obliczyć sumę kolumn w tablicy
Program V
Dana jest tablica
a[0] = 11.1, a[1] = 5.3, a[2] = 7.3, a[3] = -1.5, a[4] = -6.5
Napisać program w języku C++ zawierający funkcję
void maxmin(double* tbl,double& min,double& max,int size) ;
która wyznacza wartość minimalną i maksymalną w tablicy , size jest rozmiarem podanej tablicy tbl.
Wyznaczone ekstrema wyświetlić na ekranie.
Program VI
Niech a, b, c będą trzema liczbami całkowitymi. Napisać program w języku C++ który zamienia te zmienne wartościami tak że a -> b , b -> c i c -> a.
Napisać dwie wersje programu w których zamianę realizuje funkcja
void rotate1(int* a,int* b,int* c)
lub funkcja
void rotate2(int& a,int& b,int& c)
Program VII
Napisać program a w ramach niego funkcję
int find_char(char*,char)
znajdujący w podanym z klawiatury łańcuchu znaków podany z klawiatury znak.
Wynikiem działania funkcji find_char ma być pozycja pierwszego znaku w łańcuchu
************************************************** ************************************************** ************************************************** **************************************
************************************************** ************************************************** ************************************************** **************************************
Klasy i struktury , przeciążanie operatorów , funkcje przeciążone
Program I
Zaprojektować w języku C++ klasę Person posiadającą następujące dane: Imię , Nazwisko , Data Urodzenia, staż pracy, stan cywilny. Prócz danych klasa musi posiadać konstruktor , destruktor oraz funkcje dostępowe do prywatnych danych
W funkcji main zadeklarować zmienną klasy Person oraz wypełnić ją przykładowymi danymi.
Program II
Zaprojektować w języku C++ klasę Vector posiadającą : długość X , długość Y , długość Z.
Wyposażyć klasę w konstruktor, destruktor oraz następujące operatory
Vector operator+(Vector &x ); - dodaje 2 wektory w myśl zasad geometrii
Vector operator-(Vector &y ); -odejmuje 2 wektory w myśl zasad geometrii
Vector operator+( double ex ); - zwiększa długość wektora w każdym kierunku o podaną wartość
Vector operator- (double ex ); - zmniejsza długość wektora w każdym kierunku o zadaną wartość.
W funkcji main utworzyć dwie zmienne klasy Vector oraz wykonać dodawanie i odejmowanie testując opracowane operatory.
Program III
W katalogu Zadanie 5.3 znajdują się trzy pliki main.cc pracownik.cc, pracownik.h
Dokończyć program zawarty w tych plikach poprzez:
- dopisanie destruktora
- dopisanie funkcji dostępowych dla poszczególnych atrybutów klasy
- dopisanie operatora porównania.
Program IV
Opracować klasę potomną po klasie Pracownik z zadania 3. Klasę tę nazwać PracownikEtatowy. Klasę rozszerzyć o następujące pola:
wymiar etatu, stanowisko.
Napisać nowe wersje konstruktorów , oraz funkcji dostępowych
Program V
Dana jest klasa Pacjent zdefiniowana plikach źródłowych pacjent.cc pacjent.h w katalogu Zadanie 5.5
Opracować klasę NaszPracownik dziedziczącą po klasie Pacjent oraz po klasie Pracownik wykorzystywanej w poporzednim zadaniu
Zdefiniować konstruktory, destruktory
link do zadań:
http://ps.kis.p.lodz.pl/MojeStrony/Prog ... e/Zadania/
Znajdziesz nas na: