Имеется задача на Паскале. Нужно проверить ее на правильность и еще дописать, чтобы программа считала: кратно ли число двум,трем,четырем и шести по
10-11 класс
|
признакам делимости.
program chislo;
uses crt;
var a,b,c,d,e,f,g:integer;
begin
clrscr;
f:=1;d:=0;
writeln('Введите число ');
readln(a);
e:=a;
while e>9 do begin
b:= e mod 10;
f:=f+1;
d:=d+b;
e:= e div 10;
end;
g:=e+d;
writeln('Число ',f,' - значное');
if a mod 2<>0 then writeln('Число нечетное') else writeln('Число четное');
c:=b mod 10;
if (c=0) or (c=5) then writeln ('Число кратно 5') else writeln ('Число не кратно 5');
if (c=0) then writeln('Число кратно 10') else writeln('Число не кратно 10');
if g mod 3=0 then writeln('Число кратно 3') else writeln('Число не кратно 3');
if g mod 9=0 then writeln ('Число кратно 9') else writeln('Число не кратно 9');
end.
function two(i: integer): boolean;
begin
two := (i mod 10 mod 2 = 0);
end;
function three(i: integer): boolean;
var
buf, k: integer;
begin
buf := i;
repeat
k := k + (buf mod 10);
buf := buf div 10;
until (buf = 0);
three := (k mod 3 = 0);
end;
function four(i: integer): boolean;
begin
four := (i mod 100 mod 4 = 0);
end;
function six(i: integer): boolean;
begin
six := (two(i) and (three(i)));
end;
function BooleanToString(i: boolean): string;
begin
if (i) then
BooleanToString := 'Да'
else
BooleanToString := 'Нет';
end;
var
i: integer;
begin
readln(i);
writeln('2: ', BooleanToString(two(i)));
writeln('3: ', BooleanToString(three(i)));
writeln('4: ', BooleanToString(four(i)));
writeln('6: ', BooleanToString(six(i)));
end.
Другие вопросы из категории
дан массив B из K элементов. Определить будет ли максимальный элемент чётным.
учеников в классе и
подсчитывает число учеников учащихся выше среднего.
последовательностей, чтобы каждая из них кодировала любое из 50 различных сообщений?
пожалуйста с решением!
задач.Задача решается в Pascal ABC 1.В искусственный водоём запустили 100000 рыб. Ежегодно из водоёма забирают 12% рыб.Естественный прирост составляет 20%.Какое кол-во рыб будет в водоёме через 8 лет??
Читайте также
Дана строка, удалить текст находящийся в скобках (вместе со скобками)
Я тут начал делать, вот только с удалением у меня ничего не получается, напишите как можно сделать
Вот как я делал:
program zd;
uses crt;
var s:string; i,l,n,t,y:integer;
begin
clrscr;
writeln('Введите строку');
readln(s);
l:=length(s);
for i:=1 to n do begin
if s[i]='(' then
t:=i; {здесь присваивал номер найденной скобки}
if s[i]=')' then
y:=i; {так же, как и выше}
delete (s,t,i); {у меня получается, что он удаляет с открывающей скобки и всё что находится вправо, а левая часть до скобки остается нетронутой}
end;
writeln('Данный результат =', s);
readln;
end.
станет больше 70.Ни экраны вевести оба число.
ЗАПИСАТЬ ЗАДАЧУ В ПАСКАЛЕ!И ЕСЛИ МОЖНО ПРАВИЛЬНУЮ БЛОК СХЕМУ!
уникальных чисел в массиве....заранее спасибо...