1 / 11
Oct 2019

cos ni nie chce przyjąć tego równania
ktoś wie gdzie problem?

#include <iostream>

using namespace std;

int uczniowie, cukierki, x, y ;
int main()
{
        cout << "Podaj liczbe uczniow: " ;
        cin >> uczniowie ;
        cout << "Podaj liczbe cukierków: " ;
        cin >> cukierki ;

     if (uczniowie<cukierki)
       {
          x = cukierki/(uczniowie-1) ;
          y = cukierki-(x*(uczniowie-1)) ;
          if (y>0) cout << "tak" ;
          else cout << "nie" ;
       }
     else if (uczniowie>cukierki)
       {
           x = (uczniowie-1)/cukierki ;
           y = x*(uczniowie-1)/cukierki ;
           if (y>0) cout << "tak" ;
           else cout << "nie" ;
       }

    return 0;
  • created

    Oct '19
  • last reply

    Jan '20
  • 10

    replies

  • 1.2k

    views

  • 3

    users

  • 2

    links

  1. Dlaczego zaśmiecasz forum tworząc dwa(!) wątki do jednego zadania zamiast podpiąć się do wątku, który już dla tego zdania istnieje. Zapewniam, że takie pytanie nie zostanie niezauważone, jesli-zaczynasz-przeczytaj-koniecznie.
  2. Nie nadużywaj zmiennych globalnych (tych na zewnątrz funkcji main), dlaczego ich nie dałaś w wewnątrz main?
  3. Gdzie w Twoim programie masz wczytywanie ilości zestawów? Przecież ich może być nawet 500.
  4. Co otrzymasz gdy w klasie będzie tylko jeden uczeń?
  5. Kompletnie nie rozumiem Twojego rozwiązania gdy liczba uczniów jest większa niż liczba cukierków. Przemyśl sobie ten przypadek “na sucho”, bez pisania kodu.
  6. W C++ istnieje coś takiego jak dzielenie modulo (celowo nie podaję, jaki jest symbol tego działania i co ono znaczy - to jest tak trywialne, ze musisz do tego dojść). Przy wykorzystaniu tego działania, kod staje się banalny (zresztą bez niego też jest bardzo prosty).
  7. Przeczytaj DOKŁADNIE treść zadania. Autor nie przewiduje rozwiązań postaci “tak” albo “nie”! A czego oczekuje? No właśnie, przeczytaj dokładnie…

Bardzo ładnie i kolorowo wklejony kod, brawo! :wink:

Do uwag @korkirw’a dodałbym jeszcze:

  1. Usuń linie:
    cout << "Podaj liczbe uczniow: " ;
    oraz
    cout << "Podaj liczbe cukierków: " ;
  2. Po każdej odpowiedzi, potrzebny jest znak nowej linii.
9 days later
9 days later

ktoś może wie co ten blad oznacza
prog.cpp:33: error: expected unqualified-id before ‘return’

Błąd prawdopodobnie jest we wcześniejszej [before] linii, więc pokaż tą wcześniejszą albo większy fragment swojego kodu.

PS
Masz oczywiście return 0?

29 days later

Po krótkim goglowaniu, znalazłem dużo wyjaśnienień np na stronie Stack Overflow.

Prawdopodobnie? masz błędnie sparowane, lub rozmieszczone nawiasy klamrowe: ‘{’ i ‘}’, zobacz mój przykład: https://ideone.com/T3Dl6q5

Ne zauważyłem, a raczej zapomniałem, bo sam chwaliłem Cię, za ładnie wklejony kod i faktycznie brakuje w nim, zamykającego nawiasu klamrowego, po return 0.

W związku z tym, wysłałem Ci na prywatną pocztę prezent :wink: - musisz tylko kliknąć w prawym górnym rogu, gdy pojawi si ę tam zielona kropka.

1 month later