Kolejne zadanie, które rozwiązałem i pokazuje sposób w który możemy go .. rozwiązać. 🙂
Pochodzi ono z popularnego jak myślę wśród początkujących koderów – SPOJ.
Który zresztą bardzo polecam. Jak Mateusz powiedział, można się sporo nauczyć, podzielam jego zdanie.
Tak więc o co mi chodzi ? Treść zdania:
1830. Nierówność trójkąta
Kod zadania: KC003Napisz program, który sprawdza, czy istnieje trójkąt o bokach o podanej długości.
WejścieNa wejście programu podana zostanie pewna liczba zestawów danych. Każdy z zestawów składa się z 3 liczb rozdzielonych spacjami. Poszczególne zestawy zostaną rozdzielone znakiem nowej linii.
WyjścieNa wyjściu ma się pojawić ciąg binarny, którego i-ty wyraz jest równy 1, jeżeli istnieje trójkąt o długościach boków podanych w i-tym wczytanym z wejścia zestawie. Poszczególne elementy tego ciągu należy rozdzielić znakiem nowej linii.
PrzykładWejście:
1.2 1.2 1.2
1.5 2.5 3.5
-1.5 6.0 4.5
2 4 8Wyjście:
1
1
0
0
Wygląda na dość prosty i taki właściwie jest, tylko ja musiałem się nagłowić z rozwiązaniem. Poniżej zamieszczam kod.
#include
using namespace std;
int main(){
while(true){
double a,b,c;
cin >> a >>b >> c;
if (cin.eof()) break; // Funckcja potrzebna do zakonecznia wprowadzania danych EOF
if( a+b>c && a+c>b && c+b>a ) // Algorytm - Mozliwosci wyboru
{
cout<<"1\n";
}
else
{
cout<<"0\n";
}
}
return 0; }
no, no, no, widzę że zacząłeś już poważniej zabawę z C++. Niedługo dodam większy bardzo fajny wpis, musisz to zobaczyć.
Miło się to czyta. Tak trzymać!
Piękne zdjęcia, serdecznie pozdrawiam