Функции Sqr, Abs, Sqrt, Sin, Cos, Arctan, Ln, Exp, Pi в Pascal.

Мы уже знаем, какие существуют функции для целых переменных. Это – нахождение модуля числа (Функция Abc), а также возведение числа в квадрат (Функция Sqr). В этом уроке мы рассмотрим функции, применяемые к дробным числам. Это функции Sqr - квадрат ...

Константы в Pascal.

Иногда, бывает так, что у нас в программе встречаются величины, которые не меняются в процессе выполнения программы (т.е. фактически они противоположность переменных). Такие величины называются константами. Константы указываются в специальном ...

Функции trunc, round в Pascal.

Для того чтобы в Паскаль можно было оперировать не только целыми числами, но и дробными существуют вещественные типы данных. Один из таких типов называется Real. В этом уроке мы рассмотрим 2 функции, которые производятся над дробными числами. Это ...

Циклы и массивы

Сортировка одномерного массива. Метод пузырька.

Сортировка — перестановка местами объектов в определенном порядке. Известно несколько сотен алгоритмов сортировки и их модификаций.

Алфавит языка Паскаль.

Алфавит и словарь языка программирования Паскаль. Программа формируется из предложений, состоящих из лексем и разделителей, которые в свою очередь формируются из конечного набора литер, образующих ...

В строковую переменную можно записывать не только буквы, но и цифры. Однако это будут не числа, как таковые, а их символьное представление. Для преобразования символьных представлений числа в само число, и наоборот, используются процедуры STR и VAl.

 Например, возьмем 2 числа: 125 и 347. Если эти числа записаны в строковых переменных, то с ними можно производить те действия, которые производятся над строками. Например, в результате операции сцепления 125+347 получится 125347. Если же данные числа будут записаны в переменных типа Integer или Real, то над ними  можно производить операции, предусмотренные для чисел (сложение, вычитание умножение, деление, DIV, MOD и т.д.). Например, в результате операции сложения 125+347 получится 472.
В языке программирования Pascal предусмотрена возможность преобразования чисел в их символьное представление и наоборот.
Процедура STR преобразует число целого или вещественного типов в его строковое представление. Процедура имеет 2 параметра: STR (X, ST), где «X» - это число, а ST – его строковое представление. Также, можно указывать формат преобразования: STR(X:A:B, ST), где «A» задает ширину всего поля, которое выделяется для строкового представления числа, а «B» - количество символов в дробной части (последний параметр имеет значение в том случае, если преобразуется вещественное число). Процедура STR делает с числом то же, что и оператор Writeln перед тем как вывести число на экран (преобразует число в символ).
Процедура VAL преобразует строковое представление числа в само число, которое можно записать в целочисленную или вещественную переменную.  Процедура имеет 3 параметра: VAL (ST, X, CODE), где ST – строка, которую необходимо преобразовать в число, X – вещественная или символьная переменная, в которую записывается это число, CODE – необязательный параметр, который, в случае ошибки будет содержать номер позиции, в которой обнаружен ошибочный символ.

Использование процедуры STR.




program string7;
uses crt;
var stroka,stroka1,stroka2:string;
      x,y,z:integer;
begin
      clrscr;
      x:=1234;
      y:=5678;
      z:=x+y;
    writeln(z);
    str(x,stroka1);
    str(y,stroka2);
    stroka:=stroka1+stroka2;
    writeln(stroka);
    readln
end.



 Строка №3. Создаем 3 строковые переменные.

Строка №4. Создаем 3 целочисленные переменные.

Строка №7. В 1-ую переменную типа Integer записываем число 1234.

Строка №8. Во 2-ую переменную типа Integer записываем число 5678.

Строка №9. Складываем эти числа, результат записываем в 3-ю переменную.

Строка №10. Выводим результат на экран.

Строка№11. Переводим 1-ое число в его строковое представление, результат сохраняем в переменной «stroka1».

Строка №12. Переводим 2-ое число в его строковое представление результат сохраняем в переменной «stroka2».

Строка №13. Производим над строками операцию сцепления и записываем результат в переменную «stroka».

Строка №14. Выводим результат на экран.

procedura Str

procedura Str.

О процедуре STR также можно прочитать в разделе, посвященному графике в Pascal.


Использование процедуры VAL.


Напишем программу, в которой строковой переменной будет присвоено значение, определяющее дату, например, 23.02.1965. Пусть эта дата обозначает год вашего рождения. Программа, должна подсчитать, сколько вам лет на текущий момент. Текущим моментом будем считать 2012 год.





program string8;
uses crt;
var stroka1,stroka2:string;
      rog, let:integer;
begin
     clrscr;
     stroka1:='23.02.1965';
     stroka2:=copy(stroka1,7,4);
     val(stroka2,rog);
   let:=2012-rog;
   writeln(let);
   readln
end.



Строка №7. В переменную «stroka1» записываем дату рождения.

Строка №8. В переменную «stroka2» копируем из переменной «stroka1» последние 4 символа, 1965.

Строка №9. Преобразовываем эти 4 символа в число и записываем это число в целочисленную переменную «rog».

Строка №10. В целочисленную переменную «let» записываем значение, которое получится при вычитании из числа 2012 числа 1965.

Строка №11. Выводим значение переменной «let» на экран.

procedura val

procedura val.


Предыдущая статья : Функции Copy, Pos, процедуры Delete, Insert.

Оглавление : Уроки Паскаль. Строки.


Комментарии  

 
-33 # Кирилл 06.05.2012 10:56
Почему нету ничего про циклы и массивы? Это же самое основное в паскале...
Ответить
 
 
+5 # Антон 07.10.2012 05:25
Спасибо за ваши уроки, давно что то подобное искал!
Ответить
 
 
+5 # Настя 27.11.2012 18:27
Код второй программы не верен! при выполнении выдает ошибку, что процедура Val c параметрами указанных типов не найдена. :-|
в чем дело?
Ответить
 
 
+10 # Сай 09.01.2013 14:57
:roll: прочти сообщение DoKа:просто не написана K :D
Ответить
 
 
-3 # нуна 18.02.2013 12:52
и у меня тож((((((((((((
Ответить
 
 
-12 # Митя 01.03.2013 07:37
Настя привет солнце, своим паскалем ты меня так возбудила,что я готов скомпилировать тебя полностью и проверить тебя на исполнение работоспособнос ти. Отправь мне свой код на номер 0555838406 я проверю его на стиль програмирования дядь Генны 8)
Ответить
 
 
0 # Дима 26.11.2016 04:28
var a:string;b,c:integer;
begin
readln(a);
val(a,b,c); { три переменных а-строковая b-переменная в которую переведут значение а с- берет на себя значение 0 или >0 если перевелось удачно то с=0 иначе с примет индекс той буквы в строке которую перевести не удалось
}
writeln(b);
end.
Ответить
 
 
-1 # Нео 12.12.2012 15:06
Все просто 8)
Ответить
 
 
+4 # Dok 23.12.2012 15:01
Val(stroka2,rof ,k) k-код ошибки
Ответить
 
 
0 # mehdhar al_gaashani@ 13.05.2014 03:14
;-) 8)
Ответить
 
 
0 # mehdhar al_gaashani@ 13.05.2014 03:15
:-)
Ответить
 
 
+4 # Валентина 02.01.2015 06:46
спасибо! Успехов во всех делах! :lol:
Ответить
 
 
+1 # мишка сенсей 26.01.2015 06:37
А также в pascalABC.net из символьной типа даннах string можно проще перевести в число при помощи функции StrToInt(x) где х переменная типа string
Ответить
 
 
-2 # Джонатон нагиев 26.03.2015 05:18
желательно что бы каждое действие было описано подробнее, например я долго не мог разобрать вами написанное . заранее спасибо) :lol:
Ответить
 
 
+8 # MrRiseYT 08.12.2015 20:39
Program11.pas(1 2) : Нет перегруженной подпрограммы с таким количеством параметров Val
Ответить
 
 
+2 # Алексей 26.03.2016 06:43
:lol:
Пока не пригляделся, преследовало стойкое ощущение дежавю. Скрины как с turbo pascal из начала 90х прошлого столетия )))
Вспомнил молодость, студенческие годы... Эх... :D
Ответить
 
 
0 # Дулат 10.03.2017 12:54
Ничего не хочется читать, так как очень ярко. сделайте что нибудь...ph
Ответить
 
 
0 # deshalb 04.04.2018 08:09
я сейчас сижу на уроке информатики;спа сибо блин за эту информацию ))))
Ответить
 
 
+1 # 111 18.04.2018 19:53
какой тип данных имеют одиночные строковые символы при описании в паскаль
Ответить
 
 
0 # StepAN 23.04.2018 10:20
Строковый тип данных в Паскале. Строки в Паскале – это данные типа string. Они используются для хранения последовательно стей символов
Ответить
 
 
-3 # Vasil 30.09.2021 04:40
Великолепно
Ответить
 

Добавить комментарий

   ГлавнаяПаскальСтроки в ПаскальПроцедуры STR и VAL.