IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Строковые данные, Что то типа калькулятора на + и -
kvadrat
сообщение 21.05.2008 19:23
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 81
Пол: Мужской

Репутация: -  0  +


В строке заданы через двоеточие 2 оператора присваивания общего вида: "первый:=число1+число2:второй:=число3-число4" (например:"A:=3+4:B:=7-2"). Вычислить значения переменых и распечатать их.

Вот решение:
program lab6zad3;
uses crt;
var s,s1:string;
i,k,rez:integer;
procedure rezult(a:string;var rz:integer);
var ss:string[2];
si:char;
is,a1,a2,p1,p2,res:integer;
begin
ss:='+-';
for i:=1 to 2 do
if pos(ss[i],a)>0 then
begin
is:=pos(ss[i],a);
si:=ss[i];
end;
if si='' then writeln('error') else
begin
val(copy(a,4,is-4),a1,p1);
val(copy(a,is+1,length(s)-is),a2,p2);
if (p1<>0) or (p2<>0) then
writeln('error')
else
begin
case si of
'+':rz:=a1+a2;
'-':rz:=a1-a2;
end;
end;
end;
end;
begin
clrscr;
writeln('vvedite viragenie'); {a:=12+32:b:=43-12}
readln(s);
for i:=1 to length(s)do
if (s[i]=':')and(s[i+1]<>'=')then
begin
s1:=copy(s,1,i-1);
delete(s,1,i);
end;
writeln('rezultat:');
rezult(s1,rez);
writeln(s1[1]+'=',rez);
rezult(s,rez);
writeln;
writeln(s[1]+'=',rez);
readln;
end.


Решение верное, но необходимо записать его без процедур и функций. Помогите плиз.

Сообщение отредактировано: kvadrat - 21.05.2008 20:16
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 18.07.2025 14:03
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"