Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<stdlib.h>
- int pobierz_liczba_calkowita(char*);
- void sprawdz_rok(int);
- void wypisz(int,int);
- int wprowadz_ilosc_dni_w_miesiacu(int,int);
- void Jaki_dzien_tygodnia(int,int,int);
- int main(){
- int dzien,miesiac,rok,wynik;
- dzien=pobierz_liczba_calkowita("Podaj dzien");
- printf("\n");
- miesiac=pobierz_liczba_calkowita("\nPodaj miesiac");
- printf("\n");
- rok=pobierz_liczba_calkowita("Podaj rok");
- printf("\n");
- sprawdz_rok(rok);
- printf("\n");
- wypisz(miesiac,rok);
- printf("\n");
- wynik=wprowadz_ilosc_dni_w_miesiacu(miesiac,rok);
- printf("\n");
- printf("ilosc dni w miesiacu: %d\n",wynik);
- Jaki_dzien_tygodnia(dzien,miesiac,rok);
- printf("\n");
- system("pause");
- return 0;
- }
- int pobierz_liczba_calkowita(char*napis){
- int a;
- printf("%s\n", napis);
- scanf_s("%d",&a);
- return a;
- }
- void sprawdz_rok(int rok){
- if((rok%4==0 && rok%100!=0) || rok%400==0){
- printf("Rok jest przystepny\n");
- }
- else
- {
- printf("Rok nie jest przystepny\n");
- }
- }
- void wypisz(int miech,int rok){
- int i,j,wynik,ilosc=0,a=1;
- int miesiact[13]={31,29,31,30,31,30,31,31,30,31,30,31,0};
- int dzienk[7];
- char znak=' ';
- int wartosc=1;
- for(i=1970;i<rok;++i){
- if(a==7){a=a-7;}
- else if(a==8){a=a-7;}
- if((i%4==0 && i%100!=0) || i%400 ==0){
- a=a+2;
- }
- else
- {
- a=a+1;
- }
- }
- if(miech>1){
- for(i=0;i<miech-1;++i){
- ilosc+=miesiact[i];
- }
- wynik=ilosc%7;
- a+=wynik;
- }
- if(a==7){a=a-7;}
- else if(a==8){a=a-7;}
- else if(a==9){a=a-7;}
- else if(a==10){a=a-7;}
- else if(a==11){a=a-7;}
- else if(a==12){a=a-7;}
- else if(a==13){a=a-7;}
- else if(a==14){a=a-7;}
- else if(a==15){a=a-7;}
- if(a==1){dzienk[3]=1;}
- if(a==2){dzienk[4]=1;}
- if(a==3){dzienk[5]=1;}
- if(a==4){dzienk[6]=1;}
- if(a==5){dzienk[0]=1;}
- if(a==6){dzienk[1]=1;}
- if(a==7){dzienk[2]=1;}
- if(a==0){dzienk[2]=1;}
- //druk
- printf("Pn Wt Sr Cz Pt So N");
- printf("\n");
- i=0;
- while(dzienk[i]!=1){
- i++;
- printf("%c ",znak);
- }
- if(dzienk[i]==1){
- printf("%d ",dzienk[i]);
- }
- for(j=i;j<miesiact[miech-1]+i-1;++j){
- if((j==6)||(j==13)||(j==20)||(j==27)||(j==34)||(j==41)){
- printf("\n");
- }
- if(wartosc>8){
- wartosc++;
- printf("%d ",wartosc);
- }
- else
- {
- wartosc++;
- printf("%d ",wartosc);
- }
- }
- }
- int wprowadz_ilosc_dni_w_miesiacu(int x,int rok){
- if((rok%4==0 && rok%100!=0) || rok%400==0){
- int miesiact[12]={31,29,31,30,31,30,31,31,30,31,30,31};
- return miesiact[x-1];
- }
- else
- {
- int miesiact[12]={31,28,31,30,31,30,31,31,30,31,30,31};
- return miesiact[x-1];
- }
- }
- void Jaki_dzien_tygodnia(int dzien,int miech,int rok){
- int wynik,janar,poprawka,korekta;
- janar=(23*miech)/9;
- if(miech<3){
- poprawka=rok-1;
- korekta=0;
- wynik=(janar+dzien+rok+4+(poprawka/4)-(poprawka/100)+(poprawka/400)-korekta)%7;
- }
- else
- {
- poprawka=rok;
- korekta=2;
- wynik=(janar+dzien+rok+4+(poprawka/4)-(poprawka/100)+(poprawka/400)-korekta)%7;
- }
- if(wynik==0){printf("Dzien %d.%d.%d to niedziela\n",dzien,miech,rok);}
- if(wynik==1){printf("Dzien %d.%d.%d to poniedzialek\n",dzien,miech,rok);}
- if(wynik==2){printf("Dzien %d.%d.%d to wtorek\n",dzien,miech,rok);}
- if(wynik==3){printf("Dzien %d.%d.%d to sroda\n",dzien,miech,rok);}
- if(wynik==4){printf("Dzien %d.%d.%d to czwartek\n",dzien,miech,rok);}
- if(wynik==5){printf("Dzien %d.%d.%d to piatek\n",dzien,miech,rok);}
- if(wynik==6){printf("Dzien %d.%d.%d to sobota\n",dzien,miech,rok);}
- printf("\n");
- }
Add Comment
Please, Sign In to add comment