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

question-closed f(x)=ax+b SPOJ c++

0 głosów
973 wizyt
pytanie zadane 7 czerwca 2020 w SPOJ przez Stefan Marzec Użytkownik (710 p.)
zamknięte 8 czerwca 2020 przez Stefan Marzec

Cześć. Jest dosyć nowe zadanie na spoju mianowicie f(x)=ax+b. https://pl.spoj.com/problems/DDZ1/

Dlaczego wyświetla błędną odpowiedź? 

#include <iostream>
using namespace std;

int main(){
	int a, b;
	while(cin>>a>>b){
		if(a==0){
			cout<<"f(x)="<<b<<endl;
		}
		else if(b>0){
			cout<<"f(x)="<<a<<"x+"<<b<<endl;
		}
		else{
			cout<<"f(x)="<<a<<"x"<<b<<endl;
		}
	}
	return 0;
}

 

komentarz zamknięcia: Rozwiązane
komentarz 7 czerwca 2020 przez tkz Nałogowiec (42,040 p.)
A gdzie a!=0, a b=0?
komentarz 8 czerwca 2020 przez Stefan Marzec Użytkownik (710 p.)

Faktycznie, zapomniałem. Ale dalej nie działa.

#include <iostream>
using namespace std;


int main(){
	int a, b;
	while(cin>>a>>b){
		if(a==0){
			cout<<"f(x)="<<b<<endl;
		}
		else if(a!=0&&b>0){
			cout<<"f(x)="<<a<<"x+"<<b<<endl;
		}
		else if(a!=0&&b==0){
			cout<<"f(x)="<<a<<"x"<<endl;
		}
		else{
			cout<<"f(x)="<<a<<"x"<<b<<endl; 
		}
	}
	return 0;
}

 

komentarz 8 czerwca 2020 przez tkz Nałogowiec (42,040 p.)

Dla a = 1 b = 1 zapisz f(x)=x+1

Porównaj jaki wynika da Twój program. 

komentarz 8 czerwca 2020 przez Stefan Marzec Użytkownik (710 p.)

Dalej to samo. 

#include <iostream>
using namespace std;


int main(){
	int a, b;
	while(cin>>a>>b){
		if(a==0){
			cout<<"f(x)="<<b<<endl; 
		}
		else if(a!=0 && a!=1 && b==0){
			cout<<"f(x)="<<a<<"x"<<endl; 
		}
		else if(a!=0 && a!=1 && b>0){
			cout<<"f(x)="<<a<<"x+"<<b<<endl; 
		}
		else if(a!=0 && a!=1 && b<0){
			cout<<"f(x)="<<a<<"x"<<b<<endl; 
		}
		else if(a==1 && b==0){
			cout<<"f(x)="<<"x"<<endl; 
		}
		else if(a==1 && b>0){
			cout<<"f(x)="<<"x+"<<b<<endl; 
		}
		else if(a==1 && b<0){
			cout<<"f(x)="<<"x"<<b<<endl; 
		}
	}
	return 0;
}

 

komentarz 8 czerwca 2020 przez tkz Nałogowiec (42,040 p.)
A dla a=(-1)? Pisz testy...
komentarz 8 czerwca 2020 przez Stefan Marzec Użytkownik (710 p.)

Okej, zaakceptowało. Pisałem testy tylko nie wpadłem na wszystkie przypadki :D dzięki. Wrzucę kod dla szukających pomocy.

#include <iostream>
using namespace std;


int main(){
	int a, b;
	cin>>a>>b;
		if(a==0){
			cout<<"f(x)="<<b<<endl; 
		}
		else if(a!=0 && a!=1 && a!=-1&& b==0){
			cout<<"f(x)="<<a<<"x"<<endl; 
		}
		else if(a!=0 && a!=1 && a!=-1 && b>0){
			cout<<"f(x)="<<a<<"x+"<<b<<endl; 
		}
		else if(a!=0 && a!=1 && a!=-1 && b<0){
			cout<<"f(x)="<<a<<"x"<<b<<endl; 
		}
		else if(a==1 && b==0){
			cout<<"f(x)="<<"x"<<endl; 
		}
		else if(a==1 && b>0){
			cout<<"f(x)="<<"x+"<<b<<endl; 
		}
		else if(a==1 && b<0){
			cout<<"f(x)="<<"x"<<b<<endl; 
		}
		else if(a==-1 && b==0){
			cout<<"f(x)="<<"-x"<<endl; 
		}
		else if(a==-1 && b>0){
			cout<<"f(x)="<<"-x+"<<b<<endl; 
		}
		else if(a==-1 && b<0){
			cout<<"f(x)="<<"-x"<<b<<endl; 
		}
	
	return 0;
}

 

komentarz 8 czerwca 2020 przez tkz Nałogowiec (42,040 p.)
Lepiej wrzuć w odpowiedzi i zamknij temat.

1 odpowiedź

0 głosów
odpowiedź 8 czerwca 2020 przez Stefan Marzec Użytkownik (710 p.)
#include <iostream>
using namespace std;
 
 
int main(){
    int a, b;
    cin>>a>>b;
        if(a==0){
            cout<<"f(x)="<<b<<endl; 
        }
        else if(a!=0 && a!=1 && a!=-1&& b==0){
            cout<<"f(x)="<<a<<"x"<<endl; 
        }
        else if(a!=0 && a!=1 && a!=-1 && b>0){
            cout<<"f(x)="<<a<<"x+"<<b<<endl; 
        }
        else if(a!=0 && a!=1 && a!=-1 && b<0){
            cout<<"f(x)="<<a<<"x"<<b<<endl; 
        }
        else if(a==1 && b==0){
            cout<<"f(x)="<<"x"<<endl; 
        }
        else if(a==1 && b>0){
            cout<<"f(x)="<<"x+"<<b<<endl; 
        }
        else if(a==1 && b<0){
            cout<<"f(x)="<<"x"<<b<<endl; 
        }
        else if(a==-1 && b==0){
            cout<<"f(x)="<<"-x"<<endl; 
        }
        else if(a==-1 && b>0){
            cout<<"f(x)="<<"-x+"<<b<<endl; 
        }
        else if(a==-1 && b<0){
            cout<<"f(x)="<<"-x"<<b<<endl; 
        }
     
    return 0;
}

 

Podobne pytania

0 głosów
2 odpowiedzi 419 wizyt
pytanie zadane 6 grudnia 2018 w Matematyka, fizyka, logika przez adam11 Użytkownik (570 p.)
0 głosów
1 odpowiedź 512 wizyt
pytanie zadane 7 lipca 2020 w Matematyka, fizyka, logika przez Kacperek_code Obywatel (1,690 p.)
0 głosów
1 odpowiedź 3,491 wizyt

93,599 zapytań

142,524 odpowiedzi

322,993 komentarzy

63,082 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

Kursy INF.02 i INF.03
...