C++/Ćwiczenia
Z Wikibooks, biblioteki wolnych podręczników.
Spis treści |
[edytuj] Ćwiczenie 1
Napisać program, który czyta ze strumienia standardowego wejścia i zmienia małe litery na wielkie i odwrotnie (nie bierzemy pod uwagę polskich znaków), wypisując wynik do strumienia standardowego wyjścia. Nastepnie zmodyfikować go tak, aby pracował na plikach: wejściowym oraz wyjściowym, podanych jako parametry programu.
[edytuj] Ćwiczenie 2
Mamy tablice kwadratowa, której wymiarem jest liczba nieparzysta. Napisz program, który wypełni ja zerami i jedynkami w następujący sposób:
0 0 1 0 0 0 1 0 1 0 1 0 0 0 1 0 1 0 1 0 0 0 1 0 0
[edytuj] Ćwiczenie 3
Dany jest plik:
+-----------+----+-----------+--------------+ |PESEL |Płeć|Imię |Nazwisko | +-----------+----+-----------+--------------+ 45679815845 M Tomasz Buczakowski 48491848438 M Andzej Krzemień 81871681861 K Karolina Cubisz 78168181348 M Aleksander Buczykowski 48618481389 M Jerzy Apostoł 56884864684 K Magdalena Koczkowska 84184864889 M Patryk Rutkowski 93818984869 M Daniel Dworkowski 48498386181 K Karina Puszkowski 78681864864 M Jakub Buczakowski 48648848646 M Stefan Buczakowski 84681846844 K Anna Stepaniuk 45784698943 M Grzegorz Warszawski
- Wypisać wszystkie nazwiska kończące się na "ski" w porządku alfabetycznym, bez powtórzeń.
- Wypisać w odwrotnym porządku alfabetycznym osobno imiona żeńskie i męskie.
[edytuj] Ćwiczenie 4
Napisz funkcje wypisującą liczby pierwsze (lub złożone) z podanego zakresu liczb.
- Podpowiedź: Należy użyć algorytmu sita Eratostenesa.
[edytuj] Ćwiczenie 5
Mamy taki oto plik źrodłowy:
#include <iostream>
using namespace std;
class wydatkiMiesieczne
{
public:
//w tym miejscu wpisz brakujace pola klasy
private:
int cenaChleb; //
int cenaMleko; //ceny produktow (przypisz je w konstruktorze)
int cenaGazeta; //
bool zakupChleba; //
bool zakupMleka; //zmienne true/false
bool zakupGazety; //
int pensja; //pensja obiektu (człowieka)
int sumaWydatkowMiesiecznych; //zmienna ktora sumuje wydatki
bool czyWystarczaNaMiesiac; //zmienna przechowuje true jesli pensja jest wieksza niz wydatki; jesli jest odwrotnie - false
};
int main(int argc, char** argv)
{
wydatkiMiesieczne Marian;
Marian.zarobek(200);
Marian.czyKupujeChleb(true);
Marian.czyKupujeMleko(true);
Marian.czyKupujeGazete(true);
Marian.obliczanieWydatkowMiesiecznych();
cout << "Pensja Mariana " << (Marian.czyWystarczaPieniedzyNaWydatkiMiesieczne() ? "jest wystarczajaca" : "nie jest wystarczajaca");
cout << " na pokrycie kosztow codziennych zakupow" << endl;
wydatkiMiesieczne* Jadwiga = new wydatkiMiesieczne;
Jadwiga->zarobek(12000);
Jadwiga->czyKupujeChleb(true);
Jadwiga->czyKupujeMleko(true);
Jadwiga->czyKupujeGazete(false);
Jadwiga->obliczanieWydatkowMiesiecznych();
cout << "Pensja Jadwigi " << (Jadwiga->czyWystarczaPieniedzyNaWydatkiMiesieczne() ? "jest wystarczajaca" : "nie jest wystarczajaca");
cout << " na pokrycie kosztow codziennych zakupow" << endl;
delete Jadwiga;
getchar();
return 0;
}
Program ten oblicza czy pensja, ktorą dostaje człowiek zdefiniowany jako obiekt klasy wydatkiMiesieczne, jest w stanie pokryc uproszczone wydatki miesięczne. Jednak program nie jest kompletny. Uzupełnij brakujące pola klasy w sekcji public stosując się do poniższych instrukcji:
-
- Użyj konstruktora do przypisania wartosci polom danych:
+-----------+-----------------+ |nazwa pola |wartosc ktora ma | | danych |zostac przypisana| +-----------+-----------------+ | cenaChleb | 2 | | cenaMleko | 3 | | cenaGazeta| 2 | | | | | sumaWydat-| | | kowMiesie-| 0 | | cznych | (opcjonalnie) | +-----------+-----------------+
-
- Pamiętaj że zmienne cenaChleb, cenaMleko i cenaGazeta reprezentują cene za jedną sztukę danego produktu, a my bedziemy potrzebować ceny za zakup tych towarów przez cały miesiąc (przyjmijmy ze miesiąc ma 30 dni).
- Nie tworz innych funkcji w sekcji public niż te, które zostały wywołane w funkcji main().
- Funkcja zarobek() ma pobierac liczbe reprezentującą zarobek danej osoby (w zł) i wpisywac tą wartość w zmienną pensja.
- Funkcje z przedrostkami czyKupuje- mają przypisywac wartość (true - jeśli kupuje dany produkt; false - jeśli nie) do swoich odpowiednikow z sekcji private (np. funkcja czyKupujeMleko() przypisze wartość zmiennej zakupMleka).
- Funkcja obliczanieWydatkowMiesiecznych() ma obliczyć kwotę jaka bedzie wydana przez miesiąc kupowania ustalonych przez obiekt produktów i przypisać wynik zmiennej sumaWydatkowMiesiecznych.
- Funkcja czyWystarczaPieniedzyNaWydatkiMiesieczne() ma obliczyc czy pensja danego obiektu jest wystarczająca na pokrycie kosztów zakupów, przekazać wynik true, albo false do zmiennej czyWystarczaNaMiesiac i zwrocić go.