Инфоурок Информатика Другие методич. материалыПервые шаги в программировании язык PASCAL

Первые шаги в программировании язык PASCAL

Скачать материал

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

Блок 5.

Тема: Регулярные типы данных.

Одномерные массивы. Работа с элементами.

                                                            План.

 

 

I. Одномерные массивы.

1.     Операторы массива, виды массивов.

 а) задание одномерного массива.

 2. Решение задач.

 3.Задание на самостоятельную работу.

 

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

Под массивом понимается совокупность конечного числа данных одного типа.

Массив обозначается одним именем. Так совокупность действительных чисел 1.6, 5.7, 8.5, 0.45  можно считать массивом и обозначить одним именем, например, А. Каждый элемент массива обозначается именем массива с индексом. Элементы массива упорядочены по значениям индекса.

Индекс заключается в круглые или квадратные скобки.

В Turbo Pascal 7.0 индекс заключается в квадратные скобки.

A[1]=1.6, A[2]=5.7, A[3]=8.5, A[4]=0.45

Таким образом – индекс определяет положение элемента массива данных

Относительно его начала.

В программе массив должен быть описан.

Форма описания имеет вид

var имя массива: ARRAY [n1..n2] OF <тип элементов>;

Например, var a: array[1..100] of integer;

Здесь массив начинается с 1 по 100 элемент, элементы могут лежать в пределах от -32768 до 32767.

Можно одним описанием объединить  несколько массивов. Это будет выглядеть так.

Var A,B,C: ARRAY[1..50] OF REAL/

Здесь объявлено списком 3 массива A,B,C действительных чисел, каждый из которых содержит 50 элементов.

Элементы массива могут стоять как в левой части оператора присваивания, так и в выражениях. Над элементами массива можно производить те же операции, которые допустимы для данных его базового типа. Если базовый тип есть INTEGER, то допустимы все операции над данными целого типа, включая и стандартные функции.

В языке Turbo Pascal помимо описания массивов в разделе переменных имеется другая форма описания, состоящая из двух этапов. Сначала в разделе описания типов TYPE указывается тип массива. Затем в разделе описания переменных VAR перечисляются массивы, относящиеся к указанному типу.

Это выглядит так.

Type massiv=aaray[n1..n2] OF<тип элементов> .

Размерность массива задается при его описании и в процессе работы программы.

Присвоение значений элементам массива может происходить с помощью:

оператора Read (readln);

Uses crt;

var i,n: integer;

a: array[1..1000] of integer;

Begin

Clrscr;

Определяем число элементов в массиве.

Write’ (Введ. Размер массива’);

Readln (n);

Ввод элементов массива.

For i:1 to n do begin

Write (‘a [‘,i,’]’); readln (a[i]);

End;

Выводим на экран полученный массив.

For i:=1 to n do

Write (a[i],’’);

read key;

 

End.

Описание элементов массива в разделе описания констант.

Uses crt;

Const n=5;

A: array [1..5] of integer=(4,5,7,7,0);

Var i: integer;

begin

Полученный массив

For i:=1 to n do

Write (a[i],’’);

Read key;

End.

 

2.     Решение задач.

Пример 1 . Сформировать  одномерный массив из N элементов, где элементы массива – целые случайные числа в пределах о 1 до 45. Напечатать элементы в прямом и обратном порядке.

Решение.

 Для получения случайных чисел воспользуемся функцией RND[(x)]. Данная функция возвращает случайное число обычной точности в интервале от 0 до 1. Если аргумент опущен, возвращается следующее число из последовательности случайных чисел.

Для запуска генератора используйте процедуру Randomize .

Функция Random[(x)] формирует случайное число от 0 до X целого или вещественного типа.

X – параметр, указывающий диапазон случайного числа. Оно изменяется в пределах от 0 до X. Результат в этом случае имеет тип WORD (значения от 0 до 65535). Для получения массива целых случайных чисел используем запись random (B-A+I)+A

Зададим алгоритм решения задачи в виде пошагового исполнения следующих команд.

1.     Имя программы.

2.     Задание массива и описания всех переменных.

3.     Получение случайных чисел в заданном диапазоне.

4.     Вывод элементов массива в прямом и обратном порядке.

Записываем программу на языке Turbo-Pascal.

 

Program prim1;

Var i, n: integer;

a: array[1..100] of integer;

Begin

Randomize;

Write ('razmer='); readln (n);

For i:=1 to n do begin

A[i]:=random (46) +1;

Writeln (a[i],'');

End;

For i:=n downto 1 do

Write (a[i],'');

Readln (a[i]);

End.

Пример 2. Подсчитать количество четных элементов массива, заданного датчиком случайных чисел.

 

Составим блок- схему алгоритма.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Да

       

 

 

 

 


Нет

 

 

 

 

 

 

 

 

 


  

Программа, записанная на языке Pascal/

         Program prim2;

Var i, k,n: integer;

a: array[1..100] of integer;

Begin

Randomize;

Write ('chislo elem massiwa n=');readln(n);

For i:=1 to n do begin

a[i]:=random(45)-22;

Writeln (a[i],'');

if a[i] mod 2=0 then k:=k+1

end;

Writeln ('kol. chetnyx elem=',k);

readln;

Rnd.

 

Пример 3.

Произвести удаление элемента из одномерного массива, заданного датчиком случайных чисел.

Зададим алгоритм в виде пошагового исполнения.

1.     Задаем массив датчиком случайных чисел. Подробное задание алгоритма смотри в примере 2.

2.     Вводим номер удаляемого элемента.

3.     Смещаем элементы массива к началу, начиная с К-го.

4.     Обнуляем последний элемент.

5.     Выводим на экран измененный массив.

 

Программа на языке Pascal.

Program prim3;

Uses CRT;

Var a: array [1..100] of integer;

I, k, n: integer;

Begin

Randomize;

Clrscr;

Write (‘chislo elem. N=’); readln(n);

For i:=1 to n do begin

A[i]:=random (45)-22;

Write (a[i],’’);

End;

Write (‘nomer udalyemogo elem. K<=n’); readln (k);

For i:=1 to n do begin;

If i>=k then a[i]:=a [i+1];

End;

A[n]:=0;

For i: =1 to n-1 do begin

Write (a[i],’’);

End;

Readln;

End.

 

 

5.     Задания для самостоятельного выполнения.

1.     Составить алгоритм и программу, которая подсчитывает количество отрицательных и неотрицательных элементов одномерного массива. Массив задать датчиком случайных чисел.

2.     Произвести вставку элемента в одномерный массив.

3.     Составить алгоритм и программу, которая определяет сумму элементов одномерного массива. Элементы массива можно задавать любым способом.

Желаю удачи.

 

program z34;

{ Найти сумму элементов прямоугольной таблицы размером [n:m] }

uses crt;

 

var a : array [1..10,1..10] of longint;

    i,j,n,m,s : longint;

 begin

   clrscr;

   write('кол-во строк : ');readln(m);

   write('кол-во столбцов : ');readln(n);

   for i:=1 to m do

   for j:=1 to n do

   begin

     write('a[',i,',',i,']=');readln(a[i,j]);

   end;

   for i:=1 to m do

   for j:=1 to n do s:=s+a[i,j];

   write('Сумма:',s);

   readln;

 end.

 

program z35;

{ Найти maксимальный элемент прямоугольной

  таблицы размером [n:m].                  }

uses crt;

var a : array [1..10,1..10] of longint;

    i,j,n,m,max : longint;

begin

  clrscr;

   write('кол-во строк : ');readln(m);

   write('кол-во столбцов : ');readln(n);

   for i:=1 to m do

   for j:=1 to n do

   begin

     write('a[',i,',',j,']=');readln(a[i,j]);

   end;

   max:=a[1,1];

   for i:=1 to m do

   for j:=1 to n do

   if max<a[i,j] then max:=a[i,j];

   write('max=',max);

  readln;

end.

 

{ Дана таблица А. Записать '+' элементы таблицы А в

  таблицу В '-' элементы таблицы А в табл С.        }

uses crt;

var a,b,c : array [1..10] of longint;

    n,k,i,l : longint;

begin

  clrscr;

  write('n = ');readln(n);

  for i:=1 to n do

  begin

    write('a[',i,']=');readln(a[i]);

  end;

 

  for i:=1 to n do

  if a[i]<0 then begin

                   inc(k);b[k]:=a[i];

                 end

            else begin

                   inc(l);c[l]:=a[i];

                 end;

   writeln('положительное:');

    for i:=1 to l do writeln('c[',i,']=',c[i]);

   writeln('отрицательное:');

    for i:=1 to k do writeln('b[',i,']=',b[i]);

  readln;

end.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

                    

 

 

Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал "Первые шаги в программировании язык PASCAL"

Методические разработки к Вашему уроку:

Получите новую специальность за 2 месяца

Специалист по привлечению инвестиций

Получите профессию

Бухгалтер

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Краткое описание документа:

I. Одномерные массивы.

1.     Операторы массива, виды массивов.

 а) задание одномерного массива.

 2. Решение задач.

 3.Задание на самостоятельную работу.

 

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

Под массивом понимается совокупность конечного числа данных одного типа.

Массив обозначается одним именем. Так совокупность действительных чисел 1.6, 5.7, 8.5, 0.45  можно считать массивом и обозначить одним именем, например, А. Каждый элемент массива обозначается именем массива с индексом. Элементы массива упорядочены по значениям индекса.

Индекс заключается в круглые или квадратные скобки.

В TurboPascal 7.0 индекс заключается в квадратные скобки.

A[1]=1.6, A[2]=5.7, A[3]=8.5, A[4]=0.45

Таким образом – индекс определяет положение элемента массива данных

Относительно его начала.

В программе массив должен быть описан.

 

Форма описания имеет вид

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 625 516 материалов в базе

Скачать материал

Другие материалы

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 04.01.2015 381
    • DOCX 69.5 кбайт
    • Оцените материал:
  • Настоящий материал опубликован пользователем Орлов Юрий Николаевич. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    Орлов Юрий Николаевич
    Орлов Юрий Николаевич
    • На сайте: 9 лет и 2 месяца
    • Подписчики: 0
    • Всего просмотров: 96119
    • Всего материалов: 82

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

Бухгалтер

Бухгалтер

500/1000 ч.

Подать заявку О курсе

Курс профессиональной переподготовки

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

Преподаватель информационных технологий

300/600 ч.

от 7900 руб. от 3950 руб.
Подать заявку О курсе
  • Сейчас обучается 188 человек из 53 регионов

Курс повышения квалификации

Особенности подготовки к сдаче ЕГЭ по информатике и ИКТ в условиях реализации ФГОС СОО

36 ч. — 180 ч.

от 1700 руб. от 850 руб.
Подать заявку О курсе
  • Сейчас обучается 107 человек из 40 регионов

Курс повышения квалификации

Особенности подготовки к сдаче ОГЭ по информатике и ИКТ в условиях реализации ФГОС ООО

36 ч. — 180 ч.

от 1700 руб. от 850 руб.
Подать заявку О курсе
  • Сейчас обучается 108 человек из 39 регионов

Мини-курс

Дизайн и визуальная коммуникация

4 ч.

780 руб. 390 руб.
Подать заявку О курсе

Мини-курс

Психология личностного развития: от понимания себя к творчеству

6 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Сейчас обучается 43 человека из 21 региона

Мини-курс

Сенсорные системы и развитие нервной системы

4 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Сейчас обучается 73 человека из 35 регионов