Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Spoj


Rekomendowane odpowiedzi

Opublikowano

Cześć, chciałem sobie ostatnio porozwiązywać zadania na spoju.

Zacząłem od łatwego dla testu.

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

I o dziwo odrzuca mi mój kod.

#include <iostream>
using namespace std;

int main() {

	int a,b;
	string d;
	for(int i=0;i!=99;i++)
	{
		cin>>d>>a>>b;
		if(d=="+") cout<<a+b<<endl;
		else if(d=="-") cout<<a-b<<endl;
		else if(d=="*") cout<<a*b<<endl;
		else if(d=="/") cout<<a/b<<endl;
		else if(d=="%") cout<<a%b<<endl;
	}
}


//wydaje mi się, że to może być problem z ilością testów

Opublikowano

W forze jako warunku lepiej używać < zamiast !=

 

Poza tym, skoro ilość linijek nie przekracza 100, to znaczy że w szczególności może być ich 100, a twój program sprawdzi tylko 99.

 

a,b mogą być zadeklarowane wewnątrz pętli - nie używasz ich poza nią. To samo ze stringiem "d", swoją drogą dobrze by było inaczej go nazwać, może "znak" ? Rozumiem, że to twój kod, nikt go raczej nie będzie czytał, ale warto nabierać dobrych nawyków :)

Opublikowano

W forze jako warunku lepiej używać < zamiast !=

 

Poza tym, skoro ilość linijek nie przekracza 100, to znaczy że w szczególności może być ich 100, a twój program sprawdzi tylko 99.

 

a,b mogą być zadeklarowane wewnątrz pętli - nie używasz ich poza nią. To samo ze stringiem "d", swoją drogą dobrze by było inaczej go nazwać, może "znak" ? Rozumiem, że to twój kod, nikt go raczej nie będzie czytał, ale warto nabierać dobrych nawyków :)

Zmieniłem na pętlę nieskończoną, nadal błąd. ;p

Opublikowano

@Biumrk

Bo teraz pyta o nie w nieskończoność, mam wrażenie że chyba nie wiesz o co chodzi z nieokreśloną liczbą elementów. To że będzie ich max sto nie oznacza, że ich rzeczywista ilość zawsze będzie równa sto.

Zobacz tak:

int main() {

    int a,b;
    char d;
    while (cin >> d && cin >> a && cin >> 
    {
        if(d=='+') cout<<a+b<<endl;
        else if(d=='-') cout<<a-b<<endl;
        else if(d=='*') cout<<a*b<<endl;
        else if(d=='/') cout<<a/b<<endl;
        else if(d=='%') cout<<a%b<<endl;
    }
}

Bot do gry NosTale:


[bOT] NosBota 1.3v

Opublikowano

 

@Biumrk

Bo teraz pyta o nie w nieskończoność, mam wrażenie że chyba nie wiesz o co chodzi z nieokreśloną liczbą elementów. To że będzie ich max sto nie oznacza, że ich rzeczywista ilość zawsze będzie równa sto.

Zobacz tak:

int main() {

    int a,b;
    char d;
    while (cin >> d && cin >> a && cin >> 
    {
        if(d=='+') cout<<a+b<<endl;
        else if(d=='-') cout<<a-b<<endl;
        else if(d=='*') cout<<a*b<<endl;
        else if(d=='/') cout<<a/b<<endl;
        else if(d=='%') cout<<a%b<<endl;
    }
}

Zaakceptowało, dzięki! Rzeczywiście nie do końca rozumiałem ilość. ^^

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...