1 / 33

Язык программирования Pascal

Язык программирования Pascal. Структура программы Pascal. P rogram имя программы ; U ses раздел подключения модулей ; Const раздел констант ; Var раздел описаний переменных ; B egin операторы ; E nd. Пример структуры программы Pascal. Program pr1 ; { Заголовок } Const { константы }

Download Presentation

Язык программирования Pascal

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Язык программирования Pascal

  2. Структура программы Pascal Programимя программы; Usesраздел подключения модулей; Constраздел констант; Varраздел описанийпеременных; Beginоператоры; End.

  3. Пример структуры программы Pascal Programpr1; {Заголовок} Const{константы} g=9.8; Var{объявление переменных} a,b : integer; {целые числа -32768..+32767} x,y : real;{дробные числа} Begin A:=192+42;{оператор присваивания} X:=a/8; End.

  4. Оператор присваивания Оператор присваивания имеет вид: переменная := выражение; i := i + 1; // увеличивает значение переменной i на 1 В PascalABC.NET определены также операторы +=, -=, *=, /=

  5. Целые числа в Free Pascal integer{целые числа -32768..+32767} longint{длинные целые -2M..+2M} Byte {0..255} Word {0..65тыс}

  6. Полный список типов целых чисел (PascalABC.NET)

  7. Целочисленное деление и остаток Programpr2; {Заголовок} Var a,b : integer; {целые числа -32768..+32767} Begin A:=8 div 3 ; {=2 div - ц.ч. деление} B:=7 mod a; {=1 mod – остаток от деления} Write (‘a=’,a,’ b=’,b); {вывод на экран} Readln{пауза до нажатия enter} End.

  8. Операторы ввода и вывода {выводит информацию в одну строку} Write (‘Hello ’,a+2*b); Writeln (‘Первая строка’); {переносит в конце} Writeln(‘Вторая строка’); Writeln(a:10,b:10,c:10,d:10); {Табуляция в 10} Read(a); {ввод значения a с клавиатуры} Readln(b); {ввод 1 строки}

  9. сумматор Uses CRT; Var A, B:integer; Begin Clrscr; {очистка экрана} Textcolor(10); {цвет текста 0-15} Writeln(‘Введите два числа’); Readln(a,b); Write (‘Сумма чисел равна ’,a+b); Readln; End.

  10. ******* * * * * * * * * * * * * * *** * * * *******

  11. Вещественные числа (real, double) Описание Ввод значений x y Вывод выражения Кол-во цифр после запятой Var x,y: real; Begin Write(‘Введите x,y ‘); Readln(x,y); Writeln(‘x/y=’, x/y :0:3) Readln; End.

  12. Арифметические операции • Div • Mod

  13. Найти корни квадратного уравнения Ax2+Bx+C=0 D=B2-4ac X= var a,b,c,d,x1,x2:real; begin writeln('Введите a,b,c'); readln(a,b,c); d:=sqr(b)-4*a*c; x1:=(-b-sqrt(d))/(2*a); x2:=(-b+sqrt(d))/(2*a); writeln(‘d=’, d :0:2, ‘ x1=’, x1 :0:2, ‘ x2=’, x2 :0:2); End.

  14. Вычисления в программе • Дана сторона квадрата а. Найти его периметр P=4a Vara,p:real; Begin write(‘a=’); readln(a); P:= ; //пишем формулу P writeln(‘p=’, p :0:2) End. Примео ввода: a=7.21 Пример вывода: P=30.84

  15. Условие Нет Да Действие 2 Действие 1 Условный оператор (ветвление) или разветвляющийся алгоритм - форма организации действий, при которой в зависимости от выполнения некоторого условия совершается одна или другая последовательность шагов

  16. IfA mod 2 = 0 Нет Да ‘Нечетное’ ‘Четное’ Условный оператор (ветвление) ifусловие thenоператор1 elseоператор2; Var a:integer; Begin write(‘Введите число:‘); readln(a); if a mod 2 = 0 then write (‘Четное’) else write (‘Нечетное’); End. Ввод а

  17. Цикл с параметром FOR i:=нач. to кон. Doопер.;

  18. Даны целые числа K и N (N > 0). Вывести N раз число K. K=5 N=4 5 5 5 5 Var i,k,n:integer; Begin Write(‘k=‘); Readln(k); Write(‘N=’); Readln(n); For i:=1 to N do write(k, ’ ’); Readln End.

  19. Цикл с предусловием WHiLEусловие DO оператор; WHiLEусловие DO begin оператор1; оператор2; … end; Условие Нет Да оператор

  20. Задача While1 Даны положительные числа A и B (A > B). На отрезке длины A размещено максимально возможное количество отрезков длины B (без наложений). Не используя операции умножения и деления, найти длину незанятой части отрезка A. VarA,B:real; Begin write(‘A=’); readln(A); write(‘B=’); readln(B); While A>=B do A:=A-B; writeln(‘Остаток: ’, A :0:2); readln End. А

  21. Задача While2 VarA,B:real; i:integer; Begin write(‘A=’); readln(A); write(‘B=’); readln(B); While A>=B do begin A:=A-B; i:=i+1 end; writeln(‘Остаток: ’, A :0:2); readln End. Даны положительные числа A и B (A > B). На отрезке длины A размещено максимально возможное количество отрезков длины B(без наложений). Не используя операции умножения и деления, найти количество отрезков B, размещенных на отрезке A. А

  22. While 3 Даны целые положительные числа N и K. Используя только операции сложения и вычитания, найти частное от деления нацело NнаK, а также остаток от этого деления.

  23. While 4 Дано целое число N (> 0). Если оно является степенью числа 3, то вывести True, если не является — вывести False. Var N, M:integer; Begin M:=1; While M<N do M:=M*3; Writeln(M=N); End.

  24. While 5  Дано целое число N (> 0), являющееся некоторой степенью числа 2: N = 2K. Найти целое число K — показатель этой степени. Var N, M, k:integer; Begin M:=1; While M<N do begin M:=M*3; end; End.

  25. While 6 • Дано целое число N (> 0). Найти двойной факториал N: • N!! = N·(N−2)·(N−4)·…

  26. Строковые типы • Символьный тип ‘A’ ‘2’ ‘%’ #32(по номеру) • Var c : char; • C:= ‘a’; chr(42); - возвр. символ ‘A’ по номеру ord(‘D’); - возвр. Номер символа • Строковый тип ‘Привет мир’ (макс. 255 симв) Vara,b : string; begina:=‘тепло’; B:=‘ход’; writeln(a+b); {Конкатинация} End.

  27. Строковые операторы S:=‘информатика’; Length(s); возвр. длину строки Copy(s,3,5); возвр. часть строки нач.3-го 5 символов позиция^^кол-во символов Pos(‘а’,s); возвр. позицию вхождения подстроки в строку Delete(s,8,4); удаление части строки позиция^^кол-во символов Insert(‘ция’,s,8); вставка подстр. в строку позиция^ s[3] – возвращает 3-й символ ‘ф’ Writeln(copy(s,3,3) + s[8]); {‘фор’ + ’т’}

  28. Program STRING7; var s:string; Begin readln(s); writeln('Код первого символа: ', ord(s[1])); writeln('Код последнего символа: ', ord(s[ length(s) ]) ); end. {Это фрагмент второй задачи. Пишите в новом файле. Допишите программу} For i:=1 to N do S:=S+C;

  29. Одномерные массивы М- это упорядоченный набор данных Var a:array [нач..кон] of тип_данных; Var a:array [0..9] of integer; i:integer; Begin a[0]:=14; for i:=1 to 9 do a[i]:=i; End.

  30. Array 1 (Массив) Дано целое число N (> 0). Сформировать и вывести целочисленный массив размера N, содержащий N первых положительных нечетных чисел: 1, 3, 5, … . Var a:array[1 .. 100] of integer; i, N :integer; Begin write(‘N=’); readln(n); a[1]:=1; for i:=2 to N do a[i]:=a[i-1]+2 ; for i:=1 to N do write(a[i],’ ‘); readln End.

  31. Array 2 (Массив) Дано целое число N (> 0). Сформировать и вывести целочисленный массив размера N, содержащий N первых степеней двойки: 2,4, 8, 16 … . Var a:array[1 .. 100] of integer; i, N :integer; Begin write(‘N=’); readln(n); a[1]:=2; for i:=2 to N do begin a[i]:= a[i-1]*2 ; write(a[i],’ ‘); end; End.

  32. Двумерные массивы матрица 5х4 Var a:array[1..5, 1..4] of integer; i – строка j – столбец For i:=1 to 5 do For j:=1 to 4 do a[i,j]:=(i-1)*4+j;

  33. Matrix1. Даны целые положительные числа M и N. Сформировать целочисленную матрицу размера M × N, у которой все элементы I-й строки имеют значение 10·I (I = 1, …, M). M=3 N=5 VAR a:array[1..100,1..100]of integer; i, j, M,N:integer; Begin write(‘M=’);readln(M); write(‘N=’);readln(N); For i:=1 to M do begin For j:=1 to N do begin a[i,j]:=i*10; write(a[i,j] :4); end; writeln end; End.

More Related