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: KC003

Napisz program, który sprawdza, czy istnieje trójkąt o bokach o podanej długości.
Wejście

Na 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ście

Na 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ład

Wejście:

1.2 1.2 1.2
1.5 2.5 3.5
-1.5 6.0 4.5
2 4 8

Wyjś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.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include<iostream>
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;   }