Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // programML.cpp : Ten plik zawiera funkcję „main”. W nim rozpoczyna się i kończy wykonywanie programu.
- //
- #include "pch.h"
- #include <stdio.h>
- double podatek_dziadkowie_rodzice_dzieci(double wartosc)
- {
- if (wartosc < 64000)
- return 0;
- else
- {
- return wartosc / 10;;
- }
- }
- double podatek_rodzenstwo(double wartosc)
- {
- if (wartosc < 64000)
- return 250;
- else
- {
- return 0.15*(wartosc - 64000) + 250;
- }
- }
- double podatek_inni(double wartosc)
- {
- return 0.17*wartosc;
- }
- void zad3_3()
- {
- char przypadek;
- double darowizna;
- double podatek;
- printf("Podaj przypadek darowizny: ");
- scanf_s("%c", &przypadek);
- printf("Podaj wartosc darowizny: ");
- scanf_s("%lf", &darowizna);
- switch (przypadek)
- {
- case 'a':
- podatek = podatek_dziadkowie_rodzice_dzieci(darowizna);
- break;
- case 'b':
- podatek = podatek_rodzenstwo(darowizna);
- case 'c':
- podatek = podatek_inni(darowizna);
- }
- printf("Kwota podatku: %lf\n", podatek);
- }
- void zad7_2()
- {
- int x;
- char nazwa_pliku_odczyt[30];
- char nazwa_pliku_zapis[30];
- FILE* plik_odczyt;
- FILE* plik_zapis;
- printf("Podaj nazwe pliku odczytu: ");
- scanf_s("%s", &nazwa_pliku_odczyt, 29);
- printf("Podaj nazwe pliku zapsu: ");
- scanf_s("%s", &nazwa_pliku_zapis, 29);
- fopen_s(&plik_odczyt, nazwa_pliku_odczyt, "r");
- fopen_s(&plik_zapis, nazwa_pliku_zapis, "a");
- fscanf_s(plik_odczyt, "%d", &x);
- while (feof(plik_odczyt) == NULL)
- {
- if (x > 137)
- {
- fprintf(plik_zapis, "%d\n", x);
- }
- fscanf_s(plik_odczyt, "%d", &x);
- }
- fclose(plik_odczyt);
- fclose(plik_zapis);
- }
- void zad7_5()
- {
- char moneta;
- char nazwa_pliku_odczyt[30];
- int tablica_monet[9];
- int i;
- for (i = 0; i < 9; i++)
- {
- tablica_monet[i] = 0;
- }
- double laczna_kwota = 0;
- FILE* plik_odczyt;
- printf("Podaj nazwe pliku z monetami: ");
- scanf_s("%s", &nazwa_pliku_odczyt, 29);
- fopen_s(&plik_odczyt, nazwa_pliku_odczyt, "r");
- moneta = fgetc(plik_odczyt);
- while (feof(plik_odczyt) == NULL)
- {
- switch (moneta)
- {
- case 'c':
- tablica_monet[0]++;
- laczna_kwota += 1;
- break;
- case 't':
- tablica_monet[1]++;
- laczna_kwota += 2;
- break;
- case 'f':
- tablica_monet[2]++;
- laczna_kwota += 5;
- break;
- case 'd':
- tablica_monet[3]++;
- laczna_kwota += 10;
- break;
- case 'q':
- tablica_monet[4]++;
- laczna_kwota += 20;
- break;
- case 'h':
- tablica_monet[5]++;
- laczna_kwota += 50;
- break;
- case 'K':
- tablica_monet[6]++;
- laczna_kwota += 100;
- break;
- case 'D':
- tablica_monet[7]++;
- laczna_kwota += 200;
- break;
- case 'F':
- tablica_monet[8]++;
- laczna_kwota += 500;
- break;
- }
- moneta = fgetc(plik_odczyt);
- }
- printf("Laczna kwota: %lf\n", laczna_kwota / 100);
- printf("Monety:\n");
- printf("Monet 1gr: %d\n", tablica_monet[0]);
- printf("Monet 2gr: %d\n", tablica_monet[1]);
- printf("Monet 5gr: %d\n", tablica_monet[2]);
- printf("Monet 10gr: %d\n", tablica_monet[3]);
- printf("Monet 20gr: %d\n", tablica_monet[4]);
- printf("Monet 50gr: %d\n", tablica_monet[5]);
- printf("Monet 1zl: %d\n", tablica_monet[6]);
- printf("Monet 2zl: %d\n", tablica_monet[7]);
- printf("Monet 5zl: %d\n", tablica_monet[8]);
- fclose(plik_odczyt);
- }
- struct pracownik {
- char nazwisko[50];
- double pensja;
- };
- char vchar()
- {
- char cc;
- while ((cc = getchar()) <= ' ');
- return cc;
- }
- void wczytaj_pracownikow(pracownik lista_pracownikow[], int &ile)
- {
- FILE *plik_odczyt;
- char nazwa_odczyt[30];
- int index = 0;
- printf("Podaj nazwe pliku: ");
- scanf_s("%s", &nazwa_odczyt, 29);
- fopen_s(&plik_odczyt, nazwa_odczyt, "r");
- fscanf_s(plik_odczyt, "%d", &index);
- for(int i = 0; i < index; i++)
- {
- fscanf_s(plik_odczyt, "%s", lista_pracownikow[i+ile].nazwisko, 49);
- fscanf_s(plik_odczyt, "%d", lista_pracownikow[i+ile].pensja);
- }
- ile += index;
- fclose(plik_odczyt);
- }
- void nowy_pracownik(pracownik lista_pracownikow[], int &ile)
- {
- char nazwisko[50];
- double pensja;
- printf("Podaj nazwisko pracownika: ");
- scanf_s("%s", &nazwisko, 49);
- printf("Podaj pensje pracownika: ");
- scanf_s("%lf", &pensja);
- lista_pracownikow[ile].nazwisko = nazwisko;
- lista_pracownikow[ile].pensja = pensja;
- ile++;
- }
- void wyswietl_pracownikow(lista_pracownikow, int &ile)
- {
- }
- void zad7_1()
- {
- int liczba_pracownikow = 0;
- char opcja;
- bool wyjscie = false;
- pracownik lista_pracownikow[50];
- while (wyjscie == false)
- {
- printf("Wybierz opcje: R-wczytaj liste, N-nowy pracownik, W-wyswietl liste, Z-zapis:")
- opcja = vchar();
- opcja = opcja & 0x5F;
- switch (opcja)
- {
- case 'R':
- wczytaj_pracownikow(lista_pracownikow, liczba_pracownikow);
- break;
- case 'N':
- if (liczba_pracownikow < 50)
- {
- nowy_pracownik(lista_pracownikow, liczba_pracownikow);
- }
- else
- {
- printf("Lista pracownikow pelna!\n");
- }
- break;
- }
- case 'W':
- wyswietl_pracownikow(lista_pracownikow);
- break;
- }
- }
- int main()
- {
- //zad3_3();
- //zad7_2();
- //zad7_5();
- zad7_1();
- return 0;
- }
- // Uruchomienie programu: Ctrl + F5 lub menu Debugowanie > Uruchom bez debugowania
- // Debugowanie programu: F5 lub menu Debugowanie > Rozpocznij debugowanie
- // Porady dotyczące rozpoczynania pracy:
- // 1. Użyj okna Eksploratora rozwiązań, aby dodać pliki i zarządzać nimi
- // 2. Użyj okna programu Team Explorer, aby nawiązać połączenie z kontrolą źródła
- // 3. Użyj okna Dane wyjściowe, aby sprawdzić dane wyjściowe kompilacji i inne komunikaty
- // 4. Użyj okna Lista błędów, aby zobaczyć błędy
- // 5. Wybierz pozycję Projekt > Dodaj nowy element, aby utworzyć nowe pliki kodu, lub wybierz pozycję Projekt > Dodaj istniejący element, aby dodać istniejące pliku kodu do projektu
- // 6. Aby w przyszłości ponownie otworzyć ten projekt, przejdź do pozycji Plik > Otwórz > Projekt i wybierz plik sln
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement