Kurs maturalny z języka angielskiego!
kurs-maturalny-jezyk-angielski

PROGRAMOWANIE I ALGORYTMY

Zajęcia maturalne z informatyki
Olimpiada Informatyczna Juniorów
    Prowadzący: Marcin Kasprowicz
  • właściciel serwisu algorytm.edu.pl
  • wrzesień 2024 — start zajęć
  • czytaj więcej

Rok przestępny


Zad. 3. Napisz program, który po pobraniu pełnego roku określi, czy dany rok jest przestępny.

Rozwiązanie:

Zastanówmy się najpierw, kiedy dany rok jest przestępny.

Rok jest przestępny, gdy jest podzielny przez 4 i nie jest podzielny przez 100 lub jest podzielny przez 400. Np. 2012, 1996, 2000 to lata przestępne, natomiast 1900, 2001, 1998 nie są przestępne.

Sposób 1

#include <cstdlib>
#include <iostream>

using namespace std;

int main()
{
	int rok;

	cout<<"Podaj rok: ";
	cin>>rok;

	//wykorzystanie warunku złożonego
	if((rok%4==0 && rok%100!=0) || rok%400==0) 
		cout<<"Rok "<<rok<<" jest przestępny.";
	else
		cout<<"Rok "<<rok<<"nie jest przestępny.";

	cout<<endl;

	system("pause");
	return 0;
}

Sposób 2

#include <cstdlib>
#include <iostream>
using namespace std;

int main()
{
	int rok;

	cout<<"Podaj rok: ";
	cin>>rok;

	if(rok%400==0) //wykorzystanie warunków prostych
		cout<<"Rok "<<rok<<" jest przestępny.";
	else
		if(rok%100==0)
			cout<<"Rok "<<rok<<" nie jest przestępny.";
		else
			if(rok%4==0)
				cout<<"Rok "<<rok<<" jest przestępny.";
			else
				cout<<"Rok "<<rok<<" nie jest przestępny.";

	cout<<endl;

	system("pause");
	return 0;
}