Форум: "Основная";
Текущий архив: 2003.11.03;
Скачать: [xml.tar.bz2];
ВнизВ чём ошибка??? Найти похожие ветки
← →
Term (2003-10-24 17:44) [0]
var s:string;
t:boolean;
summa,kol,i:integer;
rez:real;
MySet: set of char;
begin
t:=false;
summa:=0;kol:=1;
MySet := [".",",","/","\"," "];
s:=Attestat_Ocenki.Edit1.Text;
for i:=0 to length(s) do
begin
if s[i] in MySet then t:=true;
if not t then
begin
summa:=summa+StrToInt(s[i]);
inc(kol);
end;
t:=false;
end;
end;
нужно среднее значение чисел в строке...
подскажите что не так...
← →
Sandman25 (2003-10-24 17:46) [1]Это среднее цифр, а не чисел.
for i := 1 to
← →
clickmaker (2003-10-24 17:48) [2]ну, во-первых for i:= 1 to Length(s)
и почему у тебя kol сразу 1, а не 0
← →
Term (2003-10-24 17:48) [3]все спасибо, просто все числа будут однозначные поэтому нет разницы между значениями "цифры" и "числа"
← →
Sandman25 (2003-10-24 17:48) [4][2] clickmaker © (24.10.03 17:48)
Потому что на 0 делить нельзя :)
← →
clickmaker (2003-10-24 17:50) [5]
> Sandman25 © (24.10.03 17:48) [4]
> [2] clickmaker © (24.10.03 17:48)
>
> Потому что на 0 делить нельзя :)
Ааа... Точна! Я и не допер сразу... :)
← →
han_malign (2003-10-24 17:50) [6]summa:=0;kol:=0;//1;
if(s[i]in["1".."5"])then begin
inc(summa,byte(s[i])-byte("0"));
inc(kol)
end;
Mid:= 1.0*summa/kol;
← →
Term (2003-10-24 17:50) [7]
> и почему у тебя kol сразу 1, а не 0
далее делить буду на значение этой переменной ну и на процессе отладки чтобы вываливалось меньше эксепшенов(хотя они всё равно вывалились :)))
← →
Slavian (2003-10-24 17:55) [8]добавь пред строкой
> summa:=summa+StrToInt(s[i]);
if (s[i]>="0")and (s[i]<="9") then
он почему думает что это не число и говорит что символ нельзя перевести в цифру!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.11.03;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.01 c