Форум «Всё о Паскале» _ Задачи _ Проблема с процедурой сору
Автор: Игорь 29.11.2009 14:23
Создал простенькую програму для сложения двух обыкновенных дробей. При сложении дробей где числитель и знаменатель однозначные числа проблем нет, но если ,скажем, знаменатель число двузначное, то используется только последняя его цифра.
Код
program p_2;
var half1,half2,buf:string; a1,a2:integer; b1,b2:integer; t1,t2,code:integer;
begin write('Введите первую дробь:'); readln(half1); write('Введите вторую дробь:'); readln(half2);
При сложении дробей где числитель и знаменатель однозначные числа проблем нет
Неправда, у тебя всегда будет знаменатель считаться нулем, потому что символ '/', который ты запихиваешь в преобразуемую строку, запрещает корректно преобразовать строку в число.
buf:=copy(half1,t2+1,t1); { <--- Вот так слеш не будет включаться в строку... }
... и все работает.
Автор: Игорь 29.11.2009 16:57
Теперь и правда работает. От радости заставил програму ещё и сокращать полученную дробь.