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

Wyjaśnienie programu

0 głosów
580 wizyt
pytanie zadane 5 grudnia 2019 w C i C++ przez NevaPL Nowicjusz (200 p.)
edycja 5 grudnia 2019 przez NevaPL
Dzięki za odpowiedź!

1 odpowiedź

+1 głos
odpowiedź 5 grudnia 2019 przez mmarszik Mądrala (7,390 p.)
wybrane 5 grudnia 2019 przez NevaPL
 
Najlepsza
int pom [50]; // Chyba błąd, tablica powinna być zainicjowana zerami.

for(int i=0; i<5; i++) // Pętle po jednym wymiarze tablicy

for(int j=0; j<5; j++) // Pętle po drugim wymiarze tablicy

int x =(rand()%68)-25; // Liczba losowa z przedziału [-25,42]

if(x!=0) // Jak wylosowano zero, to nie dodawaj do tablicy

if(x%2==0) // Jak wylosowano parzystą to nie dodawaj do tablicy

if(pom[x+25]==0) // Błąd, 42+25=67 > 49

pom[x+25]=x // Zapamiętaj aby nie powtarzać

tab[i][j]=x; // Wpisz wylosowaną liczbę do tablicy

break; // Nie próbuj już dodawać do [i][j], lecz do następnego elementu.

A tak swoją drogą,  0 jest parzyste czy nie? Liczby ujemne mogą być parzyste? Nigdy nie robiłem operacji modulo z liczb ujemnych - nie wiem co wyjdzie.
komentarz 5 grudnia 2019 przez NevaPL Nowicjusz (200 p.)
Przepraszam, tam gdzie 50 miało być 70. Zero jest cyfrą nieparzystą a liczby ujemne mogą być parzyste.  o co chodzi w tym że liczba powinna być zainicjowana zerami?
komentarz 5 grudnia 2019 przez mmarszik Mądrala (7,390 p.)
Nie wiadomo co w tablicy wpisane. Nawet jak kompilator (czasami) sam wpisze do zmiennych jakąś wartość domyślną (np. zero do statycznych), to lepiej wpisać to jawnie:

for( int i=0 ; i<70 ; i++ ) { pom[i] = 0; }

Podobne pytania

0 głosów
1 odpowiedź 317 wizyt
pytanie zadane 6 lutego 2018 w C# przez Kieszinho10 Początkujący (280 p.)
0 głosów
1 odpowiedź 474 wizyt
pytanie zadane 10 czerwca 2017 w Systemy operacyjne, programy przez ania16177 Nowicjusz (120 p.)
–1 głos
2 odpowiedzi 1,060 wizyt
pytanie zadane 17 kwietnia 2017 w SPOJ przez BinaryMan Stary wyjadacz (12,620 p.)

93,741 zapytań

142,676 odpowiedzi

323,294 komentarzy

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

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...