«аочное дистанционное образование с получением государственного диплома через Internet










ѕолучить информацию о поступлении
 
√лавна€ Ќовости  арта сайта ‘отоальбом √остева€ книга  онтакты

 

”пражнение 3

—оставим программу, котора€ запрашивает две строки по четыре символа, состо€щие из цифр. ¬ случае ввода символов, отличных от цифр, должно отображатьс€ соответствующее сообщение, а программа должна завершатьс€. ѕрограмма объедин€ет введенные строки, затем преобразует исходные строки в числа, подсчитывает их сумму, преобразует результат в строку и печатает строки, полученные в результате объединени€ и преобразовани€ суммы чисел в строку.

–аботу программы можно представить в виде трех самосто€тельных фрагментов: ввод первой и второй строк и преобразование их в число, вывод на экран результата объединени€ строк и суммировани€ чисел.

¬ывод на экран результатов организуем с помощью стандартных процедур вывода Writeln, а дл€ ввода строк и преобразовани€ их в числа создадим процедуру Inp_Str. ƒл€ передачи данных между процедурой и основной программой введем формальные параметры-переменные S типа string и X типа integer.

ƒл€ преобразовани€ введенной строки в число применим стандартную функцию Val, а дл€ анализа операции преобразовани€ строки в число введем локальную переменную Code целого типа. ѕосле преобразовани€ строки в число проверим значение переменной Code, если оно не равно 0, то значит в строке не все символы €вл€ютс€ цифрами. «начение Code укажет позицию первого символа в строке, не €вл€ющегос€ цифрой. ¬ этом случае напечатаем на экране сообщение об ошибке и укажем позицию неверно введенного символа в строке, после чего прервем работу программы, использу€ стандартную процедуру Halt. “екст процедуры Inp_Str будет выгл€деть следующим образом:

procedure Inp_Str(var S: string: var X:integer);

{ѕроцедура ввода строки цифр и преобразовани€ строки в число}

var

Cod: integer; {–езультат преобразовани€ строки в число}

begin

Write('¬ведите строку цифр');

Readln(S);

VAR(S, X, Cod); {ѕреобразование строки S в целое число X}

if Cod <> 0 then {≈сли не все символы в строке €вл€ютс€ цифрами}

begin

Writeln('ќшибка! ¬ позиции '.Cod.' введенной строки не цифра');

Halt(l); {ѕрерывание программы}

end;

end;

— учетом вышесказанного полный текст программы решени€ задачи будет записан следующим образом:

program Demo_Val_Str;

var SI. S2 : string:

XI, X2 : integer;

procedure Inp_Str(var S; string; var X:integer);

{ѕроцедура ввода строки цифр и преобразовани€ строки в число}

var

Cod: integer; {–езультат преобразовани€ строки в число}

begin

Write('¬ведите строку цифр');

Readln(S):

VaR(S, X, Cod); {ѕреобразование строки S в целое число X}

if Cod <> 0 then {≈сли не все символы в строке €вл€ютс€ цифрами}

begin

Writeln('ќшибка! ¬ позиции '.Cod,' введенной строки не цифра');

Halt(l); {ѕрерывание программы}

end;

end;

begin {Ќачало основной программы}

Inp_Str(Sl,Xl); {¬ызов процедуры ввода строки с фактическими параметрами-переменными S1.X1}

Inp_Str(S2,X2); {¬ызов процедуры ввода строки с фактическими параметрами-переменными S2,X2}

Writeln('–езультат склеивани€ строк -> ',Concat(Sl.S2));

Writelп('—умма введенных чисел= '.’1+’2);

end.

«апустите интегрированную среду программировани€. ¬ведите текст программы Demo_Val_Str и запишите файл на диск под соответствующим именем, а затем откомпилируйте его. ѕосле успешного завершени€ компил€ции проверьте работу программы с отладкой в пошаговом режиме, отслежива€ значени€ переменных SI, S2, XI, ’2.


”знать как сэкономить в кризис моно на сайте ekonom-it.ru

ќписание строкового типа —троковые выражени€ —троковые процедуры и функции ”пражнение 1 ”пражнение 2 ”пражнение 4 ”пражнение 5 ѕроцедуры и функции пользовател€ ћеханизм передачи параметров ѕример курсовой работы по "ѕредметно-ориентированным информационным системам" 


 
     
   
 


ѕриглашаем прин€ть участие в круглом столе!
подробнее   >>>
 

»нститут ћенеджмента, Ёкономики и »нноваций начинает набор на курсы повышени€ квалификации!
подробнее   >>>
 

”важемые студенты јЌќ ¬ѕќ »ћЁи»!
подробнее   >>>
 

Ќачинаетс€ набор на курсы повышени€ квалификации!
подробнее   >>>
 

ѕриглашаем прин€ть участие в конференци€х!
подробнее   >>>
 


все новости...

 


–ассылки Subscribe.Ru
—овременное образование
ѕодписатьс€ письмом