Informatică, întrebare adresată de davidalexandru9, 9 ani în urmă

Cerinţă
Andrei este foarte dezorganizat şi uneori mai strecoară câte o minciună. Pentru a-l responsabiliza, mama i-a dat în grijă biletele la teatru. Când aceasta îl întreabă unde a pus biletele, Andrei spune că între paginile numerotate cu x şi y ale manualului de informatică.

Să se verifice dacă răspunsul lui Andrei poate fi corect – dacă poate plasa biletele între paginile numerotate cu x și y ale manualului de informatică.

Date de intrare
Programul citeşte de la tastatură numerele naturale x şi y (reprezentând numărul paginilor).

Date de ieşire
Programul va afişa pe ecran mesajul Andrei e mai responsabil, dacă Andrei poate plasa biletele între paginile numerotate cu x și y; în caz contrar programul va afişa minciuna.

Restricţii şi precizări
1 ≤ x, y ≤ 1000
Exemplu:
Intrare

49 50
Ieşire

minciuna

//am facut codul dar primesc doar 80 de puncte. ma poate ajuta cineva??
#include
using namespace std;
int x, y;
int main ()
{

cin >> x >> y;
if(y-x==1 and x%2==0 and y%2==1) cout<<"Andrei e mai responsabil";
else cout<<"minciuna";

return 0;
}

//1358

Răspunsuri la întrebare

Răspuns de Gillga
3
pot incerca sa stergi verificarea cu y daca este impar , deoarece : daca x este par si y - x = 1 putem deduce ca y este urmatorul numar, implicit impar.

de asemenea nu ai nevoie ca x si y sa fie variabile globale , asa ca introducele in main ; arata mai bine , mai ingrijit .

sper sa ajute .


Gillga: daca nu se afla in carte presupun ca pune x>y ? asta fiind spusa , mai adauga o verificare ( cu sau) pentru a vedea daca x >y , daca merge numai ideea ce am expus-o la inceput ar avea sens in rest nu as intelege de ce ar merge , dar merita o incercare
Gillga: x mai mare ca y , vad ca imi schimba ceea ce am scris
Gillga: dar cred ca am inteles , ideea e ca nu da neaparat x , y in ordine , asa ca pui in x nr mai mic , in y nr mai mare , si in rest algoritmul ar trebuii sa mearga
Gillga: sper ca se intelege , daca nu pot rescrie codul ca un alt raspums ( daca ma lasa )
davidalexandru9: te rog rescrie codul 
davidalexandru9: ca nu sunt sigur ca am inteles
davidalexandru9: dau coronita daca iti iese de 100
Gillga: nu ma lasa sa rescriu , asa ca incerc aici : pe langa ceea ce faci ti , inainte mai pune if (x>y) {swap (x,y)} asta cred ca rezolva .
Gillga: if ( x mai mare ca y ) swap (x,y) ca vad ca imi scrie altceva in loc de semhul de mai mare :)
davidalexandru9: mersi mult
Alte întrebări interesante