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

Algorytm z konkursu

Object Storage Arubacloud
0 głosów
1,780 wizyt
pytanie zadane 30 listopada 2017 w Algorytmy przez bicnet Gaduła (4,800 p.)

Witam,

byłem w tym tygodniu na konkursie z informatyki (etap szkolny) , w miarę dobrze napisałem (ok.70%) , jest możliwość, że przejdę do etapu rejonowego, jednak najwięcej punktów straciłem na algorytmie, którego nie bardzo rozumiem, mniej więcej wiem jak działa, ale to mod i div miesza mi wszystko, prosiłbym o wytłumaczenie jak to działa i zrobienie podstawiając n = 2017 i ile wypisze algorytm i do czego on służy.

Z góry dziękuję za pomoc.

Pozdrawiam

2 odpowiedzi

+1 głos
odpowiedź 30 listopada 2017 przez Kube Obywatel (1,180 p.)
wybrane 1 grudnia 2017 przez bicnet
 
Najlepsza
Ten algorytm liczy ilość cyfr w liczbie (k) oraz sumę cyfr liczby (s).

Jak dzielimy 2017 to uzyskamy 201 pełnych dziesiątek (mod) oraz 7 reszty (div).

Krok 1
START:
k=0
s=0
n=2017

1. c:= n mod 10 (7)
2. n:= n div 10 (201)
3. s:= s+c (0+7=7)
4. k:=k+1 (0+1=1)

Krok 2

k=1
s=7
n=201

1. c:= n mod 10 (1)
2. n:= n div 10 (20)
3. s:= s+c (7+1=8)
4. k:=k+1 (1+1=2)

Krok 3

k=2
s=8
n=20

1. c:= n mod 10 (0)
2. n:= n div 10 (2)
3. s:= s+c (8+0=8)
4. k:=k+1 (2+1=3)

Krok 4

k=3
s=8
n=2

1. c:= n mod 10 (2)
2. n:= n div 10 (0)
3. s:= s+c (8+2=10)
4. k:=k+1 (3+1=4)

Teraz spełaniamy warunek by wyjść z tej pętli i wypisujemy
s=10 (suma wszystkich reszt dzielenia przez 10)
k=4 (ile razy mogliśmy podzielić liczbę przez 10, tak by mieć jakąkolwiek resztę z dzielenia lub całość).
0 głosów
odpowiedź 30 listopada 2017 przez ProgramistaStepek Nałogowiec (27,020 p.)

Ten algorytm nic konkretnego nie robi (jeżeli jednak a ja go nie rozpoznałem to poprawcie mnie), tak jak większość na tego typu konkursach (aczkolwiek nie wszystkie). Nie ma tu wielkiej filozofii, zakładam, że wiesz co każdy bloczek robi, dlatego przejdę od razu do mod i div.

  • mod to reszta z dzielenia. 3 mod 2 = 1     10 mod 4 = 2
  • div to dzielenie z "ucięciem" części ułamkowej liczby. 3 div 2 = 1   10 div 3 = 3

 

komentarz 30 listopada 2017 przez Snejki Stary wyjadacz (14,520 p.)
jak na moje to liczy sumę cyfr w podanej liczbie

Podobne pytania

0 głosów
0 odpowiedzi 131 wizyt
pytanie zadane 4 czerwca 2018 w Nasze projekty przez kon.bed21 Obywatel (1,610 p.)
+2 głosów
1 odpowiedź 220 wizyt
pytanie zadane 15 kwietnia 2022 w Algorytmy przez wojtikozi Nowicjusz (160 p.)
0 głosów
1 odpowiedź 231 wizyt
pytanie zadane 5 kwietnia 2017 w Algorytmy przez ArturoS159 Początkujący (440 p.)

92,565 zapytań

141,417 odpowiedzi

319,602 komentarzy

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

...