|
Hull a pelyhes
Mint ismeretes, a Télapó minden évben december 6-án este meglátogatja a gyerekeket, jókat és
rosszakat egyaránt, és megjutalmazza őket attól függően, hogy mennyi C nyelvű programot írtak
a legutóbbi látogatása óta eltelt időben.
Írjon C függvényt, amely paraméterként megkapja egy érvényes dátum három egész értékű
komponensét: egy évszámot, egy hónapszámot és egy napszámot, ebben a sorrendben! A függvény
visszatérési értéke legyen az az egész szám, amely jelzi, hogy mennyit kell még aludni a
Télapó következő látogatásáig (1 alvás/éjszaka értékkel számolva és a napközbeni alvásoktól
eltekintve)! Számításai során vegye figyelembe a csak szökőévekben előforduló február 29-i
napokat is! Egy év akkor szökőév, ha osztható 4-gyel, de nem osztható 100-zal, vagy osztható
400-zal. A függvény specifikációja a következő legyen:
A függvény specifikációja
int next_arrival(int, int, int);
Megjegyzés
A függvényt helyezze a next_arrival.c nevű állományba, és ezt az állományt küldje
be megoldásként a kiértékelő rendszernek! Megoldását a példa bemenetben szereplő adatokkal az
alábbi két állomány segítségével tesztelheti. Megoldásának kiértékelését a tesztelő rendszer
nem feltétlenül ezeknek az állományoknak a felhasználásával végzi!
main.c
#include <stdio.h> #include <stdlib.h>
int main() { int year, month, day; int next_arrival(int, int, int);
while (scanf("%d %d %d", &year, &month, &day) != EOF) { int res = next_arrival(year, month, day); printf("%d\n", res); }
return EXIT_SUCCESS; }
letöltés szöveges állományként
Makefile
CC = gcc OBJS = main.o next_arrival.o TARGETS = main
all: $(TARGETS)
main: $(OBJS) $(CC) $(OBJS) -o main
main.o: main.c $(CC) -c main.c
next_arrival.o: next_arrival.c $(CC) -c next_arrival.c
clean: rm -rf $(OBJS) *~ $(TARGETS)
letöltés szöveges állományként
Példa bemenet
2014 12 05 2014 12 06 2014 12 07 2015 12 05 2015 12 06 2015 12 07
letöltés szöveges állományként
A példa bemenethez tartozó kimenet
1 0 364 1 0 365
letöltés szöveges állományként
|
|