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

Liczby od 1 do n, podzielne przez x ale niepodzielne przez y.

Object Storage Arubacloud
0 głosów
1,205 wizyt
pytanie zadane 20 stycznia 2016 w C i C++ przez Kazik98x Obywatel (1,780 p.)
#include <iostream>

using namespace std;

int main()
{
    int ile;
    cin>>ile;

    for(int i=0;i<ile;i++)
    {
        int n,x,y,p;
        cin>>n>>x>>y;

        int *w;
        w = new int [n];

        for(int i=0;i<n;i++)
        {
            w[i]=0;
        }

        for(int i=0;i<n;i++)
        {
            w[i]+=(i+1);
        }

        for(int i=0;i<n;i++)
        {
            cout<<*w<<endl;
            w++;
        }

        if ((w[i]/x)&&(w[i]/!y))
        {
            cout<<w[i]<<endl;
        }
        else
        {
            cout<<endl;
        }

        delete [] w;

    }

    return 0;
}

 

Ten program ma wypisać liczby od 1 do n, które są podzielne przez x ale niepodzielne przez y. Napisałem taki oto kod i w konsoli pojawia się problem bo wywala program. Więc mam takie pytanie, gdzie jest błąd w tym kodzie?

2 odpowiedzi

+1 głos
odpowiedź 20 stycznia 2016 przez Noak Mądrala (5,900 p.)
wybrane 20 stycznia 2016 przez Kazik98x
 
Najlepsza
Masz bałagan w tym kodzie.

Nie potrzebna tu jest tablica gdyż możesz zrobić to na iteratorze w pętli for(int i=1;i<=n;i++).

Sprawdzanie podzielności wykonuj za pomocą modulo i%x==0 jeśli jest spełnione to liczba jest podzielna.

 

Unikaj korzystania z jednego iteratora w kilku pętlach zagnieżdżonych .
komentarz 20 stycznia 2016 przez Kazik98x Obywatel (1,780 p.)
Zrobić tą podzielność w if'ie jakoś tak?

if   ((w[i]%x==0)&&(w[i]%y!=0))

else
komentarz 20 stycznia 2016 przez Noak Mądrala (5,900 p.)
tak dokładnie o to mi chodziło :)
0 głosów
odpowiedź 20 stycznia 2016 przez xCodezaur Bywalec (2,850 p.)

To przez tą instrukcję: cin>>n>>x>>y;

Musisz to rozwiązać w inny sposób.

komentarz 20 stycznia 2016 przez Kazik98x Obywatel (1,780 p.)
Ale chodzi o to że jest w złym miejscu czy trzeba ją wywalić bo jak inaczej w komfortowy i szybki dla programu sposób zapisać zmienne?
komentarz 20 stycznia 2016 przez xCodezaur Bywalec (2,850 p.)

Spróbuj jakoś tak:

cin >> n;
x = n;
y = n;

 

komentarz 20 stycznia 2016 przez Noak Mądrala (5,900 p.)
wczytywanie jest dobre :)
komentarz 20 stycznia 2016 przez Radfler VIP (101,030 p.)

Przecież on ma szukać liczb podzielnych przez x i niepodzielnych przez y w zakresie [1, n]. Instrukcja std::cin >> n >> x >> y; jest jak najbardziej prawidłowa...

komentarz 20 stycznia 2016 przez Kazik98x Obywatel (1,780 p.)
Ale to wtedy wyjdzie że zmienne n,x,y są równe, n ma być zakresem liczb a x i y mają być całkowicie innymi zmiennymi np.

7 2 4
komentarz 20 stycznia 2016 przez xCodezaur Bywalec (2,850 p.)
Mój błąd :/ Źle to zrozumiałem.

Podobne pytania

0 głosów
2 odpowiedzi 130 wizyt
pytanie zadane 15 stycznia 2016 w C i C++ przez Inferius Początkujący (440 p.)
0 głosów
1 odpowiedź 129 wizyt
pytanie zadane 19 grudnia 2015 w C i C++ przez Patryk Krajewski Nałogowiec (26,170 p.)
0 głosów
1 odpowiedź 1,648 wizyt

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 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!

...