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

question-closed SPOJ nie akceptuja

Object Storage Arubacloud
0 głosów
227 wizyt
pytanie zadane 21 kwietnia 2021 w SPOJ przez xkamiz Użytkownik (500 p.)
zamknięte 23 kwietnia 2021 przez xkamiz
Witam, robię zadanie na SPOJ-u. Zadanie to CALC - Kalkulator. Niby wszystko spoko, kompiluje się, testuję je u siebie i również wszystko działa bez najmniejszego błędu, ale gdy daję kod sędziemu wyskakuje mi błędna odpowiedź. Nie mogę wkleić całego kodu bo nie można, a nie wiem który jego kawałek wrzucić bo nie widzę nigdzie błędu. Jest ktoś kto miał podobną sytuację, bądź chce mi pomóc? Ewentualnie mógłbym wysłać kod w wiadomości prywatnej jeśli ktoś te zadanie już skończył.
komentarz zamknięcia: Otrzymałem odpowiedź
komentarz 21 kwietnia 2021 przez Eryk Andrzejewski Mędrzec (164,260 p.)

Najlepiej będzie jak przedstawisz swoją wizję odnośnie tego zadania - czyli jak do niego podchodzisz, jaki masz na to pomysł. Tak będzie nam łatwiej smiley

komentarz 21 kwietnia 2021 przez Eryk Andrzejewski Mędrzec (164,260 p.)

Teraz spojrzałem na to zadanie i nie wydaje się właściwie takim do którego trzeba byłoby mieć szczególny zamysł, więc bez kodu będzie trochę ciężko pomóc. Ja tam bym osobiście nie miał nic przeciwko, abyś go wrzucił, bo raz że i tak nie działa, a dwa że to nie jest coś wybitnie trudnego. wink

komentarz 21 kwietnia 2021 przez xkamiz Użytkownik (500 p.)
#include <iostream>

using namespace std;

char znak;
int a,b,wynik[100],liczba_testow;


int main()
{
	
	cin >> liczba_testow;
	
	for(int i = 0; i <= liczba_testow -1; i++)
	{
		
		cin >> znak >> a >> b;	
		
		if(znak == '+') wynik[i] = a + b;
		
		if(znak == '-') wynik[i] = a - b;
		
		if(znak == '*') wynik[i] = a * b;
			
		if(znak == '/') wynik[i] = a / b;
				
		if(znak == '%') wynik[i] = a % b;
		
	}
	
	
	for(int i = 0; i <= liczba_testow -1; i++) cout << wynik[i] << endl;
	
	return 0;
}

Podejrzewam że może chodzić o tablicę, innego pomysłu nie mam.

1 odpowiedź

0 głosów
odpowiedź 21 kwietnia 2021 przez Eryk Andrzejewski Mędrzec (164,260 p.)
wybrane 23 kwietnia 2021 przez xkamiz
 
Najlepsza

Problem polega na tym, że w tym zadaniu wejście zostało określone nieco inaczej. Ty oczekujesz że najpierw zostanie podana liczba linii, a dopiero później odpowiednie linie. A jak można zauważyć w sekcji Wejście, tak nie jest.

Możesz posłużyć się taką konstrukcją:

while (std::cin >> operacja >> argument_1 >> argument_2) {
    // ...
}

Każdy obieg pętli będzie odpowiadał dokładnie jednej linii, i wewnątrz tej pętli dasz odpowiednią instrukcję warunkową do wyboru operacji, którą wykonujesz. Nie ma potrzeby przechowywać tych wyników w żadnej tablicy, ponieważ operacje wykonujesz sekwencyjnie, linia po linii. Jak już wyznaczysz wartość operacji dla danej linii, to po prostu wypisz wynik i więcej już o nim nie musisz pamiętać. wink

komentarz 21 kwietnia 2021 przez xkamiz Użytkownik (500 p.)

Faktycznie, teraz to widzę. Na początku myślałem że wynik ma się wyświetlić dopiero po wpisaniu wszystkich działań. Dziękuję za pomoc smiley

komentarz 22 kwietnia 2021 przez Eryk Andrzejewski Mędrzec (164,260 p.)

Właśnie o to chodzi w koncepcji tych strumieni wejścia i wyjścia, że możesz pobierać z nich dane i wypisywać "w locie". smiley

Cieszę się, że mogłem pomóc.

Podobne pytania

0 głosów
1 odpowiedź 181 wizyt
pytanie zadane 25 kwietnia 2020 w SPOJ przez Noseczek12 Użytkownik (550 p.)
0 głosów
1 odpowiedź 249 wizyt
0 głosów
1 odpowiedź 231 wizyt
pytanie zadane 21 marca 2020 w SPOJ przez Sashimo Użytkownik (740 p.)

92,555 zapytań

141,404 odpowiedzi

319,560 komentarzy

61,941 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...