ЦИКЛ «ПОКА», СИСТЕМЫ СЧИСЛЕНИЯ САВЕЛЬЕВА Ж.Ф., МБОУ СОШ 27, КРАСНОЯРСК
СУММА ЦИФР ЦЕЛОГО ЧИСЛА A=25 S=0 1 25mod10= 5S=0+5 25div10=2A=2 2 2mod10= 2S=5+2 2div10=0A=0
СУММА ЦИФР ЦЕЛОГО ЧИСЛА НАЧАЛО A A<>0 S:=s+(a mod 10); A:=a div 10; да S КОНЕЦ нет
АЛГОРИТМ ПЕРЕВОДА ДЕСЯТИЧНОГО ЧИСЛА В ДВОИЧНУЮ СИСТЕМУ
25 div2=1225 mod 2=1S=1*1 25 div2=1225 mod 2=1S=1*1 12 div2=612 mod 2=0S=1+0*10 25 div2=1225 mod 2=1S=1*1 12 div2=612 mod 2=0S=1+0*10 6 div2=36 mod 2=0S=1+0* div2=1225 mod 2=1S=1*1 12 div2=612 mod 2=0S=1+0*10 6 div2=36 mod 2=0S=1+0*100 3 div2=13 mod 2=1S=1+1* div2=1225 mod 2=1S=1*1 12 div2=612 mod 2=0S=1+0*10 6 div2=36 mod 2=0S=1+0*100 3 div2=13 mod 2=1S=1+1* div2=01 mod 2=1S=1001+1* div2=1225 mod 2=1S=1*1 12 div2=612 mod 2=0S=1+0*10 6 div2=36 mod 2=0S=1+0*100 3 div2=13 mod 2=1S=1+1* div2=01 mod 2=1S=1001+1*10000 S=11001
НАЧАЛО A, P A<>0 S:=s+(a mod p)*mn; A:=a div p; Mn:=mn*10; Mn:=1 да S КОНЕЦ нет АЛГОРИТМ ПЕРЕВОДА ДЕСЯТИЧНОГО ЧИСЛА В P - СИСТЕМУ
РЕАЛИЗАЦИЯ АЛГОРИТМА. ПАСКАЛЬ program per10_p; uses crt; var a,s,mn,p:longint; begin readln(a,p); mn:=1; while a<>0 do begin s:=s+(a mod p)*mn; mn:=mn*10; a:=a div p; end; writeln(s); end.
ИСХОДНЫЕ ДАННЫЕ:A=11001, p=2, mn:=1; 1.S:=s+(a mod 10)*mn=0+(11001 mod 10)*1=0+1*1=1, mn:=mn*p=1*2=2, a: =a div 10=11001 div 10= S:=s+(a mod 10)*mn=1+(1100 mod 10)*2=1+0*2=1, mn:=mn*p=2*2=4, a: =a div 10=1100 div 10= S:=s+(a mod 10)*mn=1+(110 mod 10)*4=1+0*4=1, mn:=mn*p=4*2=8, a: =a div 10=110 div 10=11 4. S:=s+(a mod 10)*mn=1+(11 mod 10)*8=1+1*8=9, mn:=mn*p=8*2=16, a: =a div 10=11 div 10=1 5. S:=s+(a mod 10)*mn=9+(1 mod 10)*16=9+1*16=25, mn:=mn*p=16*2=32, a: =a div 10=1 div 10=0 S=25 ПОШАГОВОЕ ВЫПОЛНЕНИЕ АЛГОРИТМА 11001(2)=1*1+0*2+0*4+1*8+1*16=1+8+16=25(10)
НАЧАЛО A, P A<>0 S:=s+(a mod 10)*mn; A:=a div 10; mn:=mn*p; Mn:=1 да S КОНЕЦ нет АЛГОРИТМ ПЕРЕВОДА ЧИСЛА ИЗ P – СИСТЕМЫ В ДЕСЯТИЧНУЮ
program P_10; var a,p,mn,s:longint; begin readln(a,p); mn:=1; while a<>0 do begin s:=s+(a mod 10)*mn; a:=a div 10; mn:=mn*p; end; writeln(s); end. РЕАЛИЗАЦИЯ АЛГОРИТМА. ПАСКАЛЬ