Witam. Prosze o pomoc. Musze napisac pseudokod algorytmu ktory dodaje parzystosc dowolnej liczby calkowitej
Sprawdź czy ostatnia cyfra tej liczby dzieli się bez reszty przez 2.
Czy ten pseudokod bedzie wygladal tak ?
czytaj (n)
if n < 0
then n < n * (-1)
while n > 1
do n < n-2
if n = 0
then pisz (true)
else pisz (false)
return 0
Nie. Twój kod jest w ogóle bez sensu.
to proszę o pomoc jak to napisać
Shalom Ci napisał wyżej. Pierwsze co mi przychodzi do głowy to możesz zamienić liczbę na stringa następnie pobrać ostatni znak i sprawdzić czy dzieli się bez reszty przez 2. Może jest łatwiejsze podejście - na przykład po prostu modulo.
sprawdź, czy najniższy bit jest ustawiony, to on odpowiada za to, czy liczba jest parzysta, czy nie - if (n & 1 == 1) nieparzysta(); else parzysta();
. Ewentualnie sprawdź resztą z dzielenia modulo - zadziała to znacznie szybciej, niż to Twoje odejmowanie (które ma sens, ale jest tak skrajnie nieoptymalne, że Twój kod w zasadzie jest bez sensu) - if (n % 2 == 1) nieparzysta(); else parzysta();
.
co znaczy "dodaje parzystosc"?
Jeśli chodzi o wyznaczanie parzystości, to:
wczytaj a;
if( (a&1)==0 ) pisz "parzyste"
else pisz "nieparzyste"
To są podstawy podstaw.