• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

SPOJ c++ trójkąty łatwe problem

Mały hosting, OGROMNE możliwości
0 głosów
1,570,264 wizyt
pytanie zadane 6 kwietnia 2017 w SPOJ przez Rosik Nowicjusz (190 p.)

Witam. 

Pojawił się u mnie problem w pewnym dość łatwym zadaniu na platformie SPOJ

http://pl.spoj.com/problems/RODZ_TRO/

Dla podanych przykładów w zadaniu, wypisuje wszystko dobrze, jednak "sędzia" nie chce przyjąć zadania. Pewnie ze względu na "Nieznana liczba testów."

Zacząłem tak : 
 

#include <iostream>
#include <math.h>
using namespace std;

int a,b,c;
int main()
{
    while (true)
    {
        cin>>a>>b>>c;

      ... - Tutaj warunki  które muszę być spełnione 

Pomimo, że zadanie jest proste to chciałbym , aby zostało mi zaliczone laugh
Wcześniej nie użyłem 

while (true)

ale i tak "Sędzia" nie akceptował zadania. Macie jakiś pomysł aby to poprawić ?

2 odpowiedzi

+1 głos
odpowiedź 6 kwietnia 2017 przez 10kw10 Pasjonat (22,880 p.)
wybrane 7 kwietnia 2017 przez Rosik
 
Najlepsza

Spróbuj tak:

while(cin>>a>>b>>c)

Mi przyjęło ;)

0 głosów
odpowiedź 6 kwietnia 2017 przez ProgramistaStepek Nałogowiec (27,020 p.)

Nie jestem pewien, ale czy nie powinno być ? wink

while (cin) 

 

 

komentarz 6 kwietnia 2017 przez Rosik Nowicjusz (190 p.)

Poprawiłem i w cpp działa , natomiast sędzia wypisuje "błędna odpowiedź" 

Zrezygnowałem nawet  z biblioteki 

<math.h>

oraz funkcji "pow" zastępując ją mnożeniem.. Wciąż nie wiem gdzie tkwi problem 

 

komentarz 6 kwietnia 2017 przez ProgramistaStepek Nałogowiec (27,020 p.)
A możesz dać więcej kodu?
komentarz 6 kwietnia 2017 przez Rosik Nowicjusz (190 p.)

Dwie wersje : 

 

#include <iostream>

using namespace std;

int a,b,c;
int main()
{
     while(cin)
    {
        
    
        cin>>a>>b>>c;
    if ((a<b+c) && (b<a+c) && (c<a+b))
      {
       
       if ((a*a==b*b+c*c) || (b*b==a*a+c*c) || (c*c==b*b+a*a))
         cout<<"prostokatny"<<endl;
       else 
      
       if ((a*a>b*b+c*c) || (b*b>a*a+c*c) || (c*c>b*b+a*a))
         cout<<"rozwartokatny"<<endl;
       else 
       
       if ((a*a<b*b+c*c) || (b*b<a*a+c*c) || (c*c<b*b+a*a))
          cout<<"ostrokatny"<<endl;
       }
         else cout<<"brak"<<endl;
}
}

Oraz 

#include <iostream>
#include <math.h>

using namespace std;

int a, b, c;

int main()
{	
	while (cin)
	{
		cin>>a>>b>>c;
		if (a+b>c && a+c>b && b+c>a)
		{
			if (pow(a,2)==pow(b,2)+pow(c,2) || pow(b,2)==pow(a,2)+pow(c,2) || pow(c,2)==pow(b,2)+pow(a,2))
				cout<<"prostokatny";
			else if (pow(a,2)<pow(b,2)+pow(c,2) || pow(b,2)<pow(a,2)+pow(c,2) || pow(c,2)<pow(b,2)+pow(a,2))
				cout<<"ostrokatny";
			else
				cout<<"rozwartokatny";
		}
		else
			cout<<"brak";
		cout<<endl;
		
	}
}

 

Podobne pytania

0 głosów
1 odpowiedź 446 wizyt
pytanie zadane 23 lipca 2018 w SPOJ przez krawiecki Początkujący (490 p.)
0 głosów
1 odpowiedź 394 wizyt
pytanie zadane 2 stycznia 2018 w SPOJ przez niezalogowany
0 głosów
0 odpowiedzi 890 wizyt
pytanie zadane 3 lutego 2023 w SPOJ przez Pan_Blazej Nowicjusz (180 p.)

93,717 zapytań

142,629 odpowiedzi

323,261 komentarzy

63,261 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...