Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Переделать условие

Автор: Slash 21.05.2007 1:37

Дан код программы ! мне нужно изменить условие этого кода !
тут условие сумма цифр числа делиться на 5 а мну нужно число состоит из чётного количества цифр


uses crt;
var
sum,chislo,n,b,min,l,h:integer;
begin
clrscr;
min:=99999;
sum:=0;
l:=0;
repeat
writeln ('Vvedite chislo');
read (chislo);
sum:=sum+chislo;
n:=abs(chislo);
if chislo<>0 then
if chislo<min then min:=chislo;
repeat
b:=n mod 10;
n:=n div 10;
l:=l+b;
until n=0;
if L mod 5=0 then h:=h+1;
until clo=0;
writeln ('Summa vseh chisel=',sum);
writeln ('Min element=',min);
writeln('Kol-vo chisel delashihsa na 5: ',h);
readkey;
end.



help me

Автор: Perfez 21.05.2007 1:52

Лови,Slash: smile.gif

 
var
s:string;
Begin
WriteLn('Vvedite chislo:');
ReadLn(s);
If Odd(length(s)) then WriteLn('Nechetnoye kolichestvo cifr')
else WriteLn('Chetnoye kolichestvo cifr');
ReadLn;
End.


Автор: Slash 21.05.2007 2:24

это не то ! smile.gif
Для удобства вот полностью условие которое мне нужно сделать
Введена последовательность целых чисел. Признаком конца ввода является введение числа 0. Вычислить сумму элементов этой последовательности, найти минимальный элемент в этой последовательности и количество элементов удовлетворяющих правилу вашего варианта.
правило моего варианта
Число состоит из четного количества цифр.


а задание того кода вот такое
Введена последовательность целых чисел. Признаком конца ввода является введение числа 0. Вычислить сумму элементов этой последовательности, найти минимальный элемент в этой последовательности и количество элементов удовлетворяющих правилу вашего варианта.
правило варианта
Сумма цифр числа делиться на пять

Автор: Гость 21.05.2007 3:06

 
uses crt;

var
i : integer;
s : string;
n, n1, code : integer;

begin
n := 0;
clrscr;
readln(s);
for i := 1 to length(s) do begin
val(s[i], n1, code);
n := n + n1;
end;
if (n mod 5 = 0) then
writeln ('da')
else
writeln ('net');

readkey;
end.


Автор: Slash 21.05.2007 11:55

Программа работает не корректно вводишь 1234 пишет чётное кол во чисел
вводишь 2345 пишет нечётное blink.gif +мне нужно изменить тока 1 условие а остальное оставить в рабочем состоянии чтобы считал сумму и находил мин элемент

Автор: Dj.Boom 21.05.2007 12:55

проверить четность это элементарно dry.gif :

Код

uses crt;
var
s : string;
n : integer;
begin
n := 0;
clrscr;
readln(s);
  n:=ord(s[0]);
if (n mod 2) = 0 then
  writeln ('da')
else
  writeln ('net');
readln;
end.


Автор: Slash 21.05.2007 14:04

а можешь этот код вставить в код который в 1ом посте ?

Автор: nikita182 21.05.2007 16:31

 
uses crt;
var
sum,chislo,n,b,min,l,h:integer;
s : string;
begin
clrscr;
h := 0;
min:=9999;
sum:=0;
l:=0;
repeat
writeln ('Vvedite chislo');
read (chislo);
sum:=sum+chislo;
n:=abs(chislo);
if chislo<>0 then
if chislo<min then min:=chislo;

str (chislo, s);
n:=ord(s[0]);
if (n mod 2) = 0 then
h:=h+1;

until chislo=0;
writeln ('Summa vseh chisel=',sum);
writeln ('Min element=',min);
writeln('Kol-vo nuzhnix chisel : ',h);
readkey;
end.



так?

Автор: Slash 21.05.2007 18:36

Огромное спасибо ! как раз то что мне надо

P.S. жаль тебе репу поднять не могу ( 25 сообщений надо smile.gif )

Автор: nikita182 21.05.2007 20:53

рад, что смог помочь

мож кто другой подымет...