Показать сообщение отдельно
Старый 25.08.2011, 00:43   #1 (permalink)
sharingan_eroha
Новичок
 
Регистрация: 25.08.2011
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Помогите, пожалуйста, нарисовать блок-схемы?

Помогите пожалуйста, а то у меня с этим туговато... Задачи еще как-никак сделал, с помощью, а блок схемы никак(
1) УСЛОВИЕ ЗАДАЧИ
Числа, сумма цифр каждого из которых при возведении в некоторую степень дает то же самое число ( например, 81=92, 4913=173 )

ТЕКСТ ПРОГРАММЫ
uses crt;
var sum,i,tn,n,temp,s,a,b:longint;
begin
repeat
clrscr;
write('Введите интервал: ');
readln(a,b);
if(b<a) or (a<=1) then
begin
writeln('Не правильный ввод!');
readln;
end;
until (a<=b) and (a>1);
for i:=a to b do
begin
n:=i;
s:=1;
while n<=b do
begin
tn:=1;
sum:=0;
temp:=n;
while tn<=n do
tn:=tn*10;
tn:=tn div 10;
while temp>0 do
begin
sum:=sum+temp div tn;
temp:=temp-(temp div tn)*tn;
tn:=tn div 10;
end;
if (sum=i) and (s>1) then
writeln(i,'^',s,'=',n);
n:=n*i;
s:=s+1;
end;
end;
readln;
end.

2)УСЛОВИЕ ЗАДАЧИ
Перевести число из двоичной в пятеричную систему счисления.

ТЕКСТ ПРОГРАММЫ
uses crt;
var s:string;
n,I,k:integer;
checked: boolean;
procedure toFive(number:integer);
begin
if number>5 then
toFive(number div 5);
if number=5 then write(‘1’) else
write(number mod 5);
end;
begin
repeat
clrscr;
checked:=true;
writeln('Вводим число в двоичной системе счисления: ');
readln(s);
for i:=1 to length(s) do
if (ord(s[i])-48<>0) and (ord(s[i])-48<>1) then
begin
checked:=false;
writeln('Число не в двоичной системе счисления! =(‘);
readln;
break;
end;
until checked=true;
k:=1;
n:=0;
for i:=length(s) downto 1 do
begin
if ord(s[i])-48=1 then
n:=n+k;
k:=k*2;
end;
toFive(n);
readln;
end.

Заранее БОЛЬШОЕ спасибо.
sharingan_eroha вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070