kopilkaurokov.ru - сайт для учителей

Создайте Ваш сайт учителя Курсы ПК и ППК Видеоуроки Олимпиады Вебинары для учителей

Обучение решению задач программирование на pascal

Нажмите, чтобы узнать подробности

Презентация помогает учителю при обучении решении задач по теме "Программирование", содержит материал для актуализации знаний - разбор одной задачи, материал для объяснения нового материала по теме "Двумерные массивы. Решение типовых задач". В презентации рассмотрены задачи на нахождение наибольшего и наименьшего элемента столбца или строки, нахождение суммы элементов побочной и главной диагонали, обмен элементов столбца или строки.

Вы уже знаете о суперспособностях современного учителя?
Тратить минимум сил на подготовку и проведение уроков.
Быстро и объективно проверять знания учащихся.
Сделать изучение нового материала максимально понятным.
Избавить себя от подбора заданий и их проверки после уроков.
Наладить дисциплину на своих уроках.
Получить возможность работать творчески.

Просмотр содержимого документа
«Обучение решению задач программирование на pascal »

Обучение решению задач  программирование на pascal  Одномерные и двумерные массивы Преподаватель математики и информатики ГБОУ СПО РО «Константиновский педагогический колледж» Алексей Юлия Вадимовна

Обучение решению задач программирование на pascal Одномерные и двумерные массивы

Преподаватель математики и информатики

ГБОУ СПО РО «Константиновский педагогический колледж»

Алексей Юлия Вадимовна

повторение

повторение

=0 do begin Write(sqrt(f),' '); f:=f-7; end; Write(' Вычисления окончены') END." width="640"

Задание: Вычислять с использованием while квадратные корни из чисел 900, 893, 886, 879 и т.д. до тех пор, пока это можно делать.

VAR f : Integer; BEGIN Write(‘Вычисление квадратных корней '); f:=900; while f=0 do begin Write(sqrt(f),' '); f:=f-7; end; Write(' Вычисления окончены') END.

Задание: Вычислять с использованием repeat квадратные корни из чисел 900, 893, 886, 879 и т.д. до тех пор, пока это можно делать. VAR f : Integer;  BEGIN   Write(‘Вычисление квадратных корней ');   f:=900;   repeat    Write(sqrt(f):3:3,' ');    f:=f-7;   until f   Write(' Вычисления окончены')  END.

Задание: Вычислять с использованием repeat квадратные корни из чисел 900, 893, 886, 879 и т.д. до тех пор, пока это можно делать.

VAR f : Integer; BEGIN Write(‘Вычисление квадратных корней '); f:=900; repeat

Write(sqrt(f):3:3,' ');

f:=f-7;

until f Write(' Вычисления окончены') END.

Напечатать с помощью оператора for: Прямой счет: -5 -4 -3 -2 -1 0 1 2 3 4 5 Обратный счет: 5 4 3 2 1 0 -1 -2 -3 -4 -5 Конец счета VAR i : Integer;  BEGIN Write(‘Прямой счет’);   for i:=-5 to 5 do     begin   Write(i);    end; Write(‘Обратный счет’);   for i:=5 downto -5 do    begin   Write(i);    end; Write('Счет окончен'); END.

Напечатать с помощью оператора for:

Прямой счет: -5 -4 -3 -2 -1 0 1 2 3 4 5

Обратный счет: 5 4 3 2 1 0 -1 -2 -3 -4 -5 Конец счета

VAR i : Integer; BEGIN

Write(‘Прямой счет’); for i:=-5 to 5 do begin Write(i); end;

Write(‘Обратный счет’); for i:=5 downto -5 do begin Write(i); end;

Write('Счет окончен');

END.

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму. VAR   i,N:Integer;   a,s:Real; BEGIN  ReadLn(N);  s:=0;  for i:=1 to N do  begin   ReadLn(a);    s:=s+a  end {for};  WriteLn(‘Сумма равна ' ,s:20:10) END. Пусть N=2, a=5 и 3. Тогда по этой программе Паскаль напечатает ...

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму.

VAR i,N:Integer;

a,s:Real;

BEGIN

ReadLn(N);

s:=0;

for i:=1 to N do begin

ReadLn(a);

s:=s+a

end {for};

WriteLn(‘Сумма равна ' ,s:20:10)

END.

Пусть N=2, a=5 и 3. Тогда по этой программе Паскаль напечатает ...

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму. Что он напечатает, если: Вместо s:=0 написать s:=10. VAR   i,N:Integer;   a,s:Real; BEGIN  ReadLn(N);  s:=0;  for i:=1 to N do  begin   ReadLn(a);    s:=s+a  end {for};  WriteLn(‘Сумма равна ' ,s:20:10) END.

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму.

Что он напечатает, если:

  • Вместо s:=0 написать s:=10.

VAR i,N:Integer;

a,s:Real;

BEGIN

ReadLn(N);

s:=0;

for i:=1 to N do begin

ReadLn(a);

s:=s+a

end {for};

WriteLn(‘Сумма равна ' ,s:20:10)

END.

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму. Что он напечатает, если: Вместо s:=s+a написать s:=s+a+1 . VAR   i,N:Integer;   a,s:Real; BEGIN  ReadLn(N);  s:=0;  for i:=1 to N do  begin   ReadLn(a);    s:=s+a  end {for};  WriteLn(‘Сумма равна ' ,s:20:10) END.

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму.

Что он напечатает, если:

  • Вместо s:=s+a написать s:=s+a+1 .

VAR i,N:Integer;

a,s:Real;

BEGIN

ReadLn(N);

s:=0;

for i:=1 to N do begin

ReadLn(a);

s:=s+a

end {for};

WriteLn(‘Сумма равна ' ,s:20:10)

END.

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму. Что он напечатает, если: Строки end {for} и WriteLn поменять местами. VAR   i,N:Integer;   a,s:Real; BEGIN  ReadLn(N);  s:=0;  for i:=1 to N do  begin   ReadLn(a);    s:=s+a  end {for};  WriteLn(‘Сумма равна ' ,s:20:10) END.

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму.

Что он напечатает, если:

  • Строки end {for} и WriteLn поменять местами.

VAR i,N:Integer;

a,s:Real;

BEGIN

ReadLn(N);

s:=0;

for i:=1 to N do begin

ReadLn(a);

s:=s+a

end {for};

WriteLn(‘Сумма равна ' ,s:20:10)

END.

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму. Что он напечатает, если: Строки s:=0 и for поменять местами. VAR   i,N:Integer;   a,s:Real; BEGIN  ReadLn(N);  s:=0;  for i:=1 to N do  begin   ReadLn(a);    s:=s+a  end {for};  WriteLn(‘Сумма равна ' ,s:20:10) END.

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму.

Что он напечатает, если:

  • Строки s:=0 и for поменять местами.

VAR i,N:Integer;

a,s:Real;

BEGIN

ReadLn(N);

s:=0;

for i:=1 to N do begin

ReadLn(a);

s:=s+a

end {for};

WriteLn(‘Сумма равна ' ,s:20:10)

END.

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму. Что он напечатает, если: Строки for и ReadLn поменять местами. VAR   i,N:Integer;   a,s:Real; BEGIN  ReadLn(N);  s:=0;  for i:=1 to N do  begin   ReadLn(a);    s:=s+a  end {for};  WriteLn(‘Сумма равна ' ,s:20:10) END.

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму.

Что он напечатает, если:

  • Строки for и ReadLn поменять местами.

VAR i,N:Integer;

a,s:Real;

BEGIN

ReadLn(N);

s:=0;

for i:=1 to N do begin

ReadLn(a);

s:=s+a

end {for};

WriteLn(‘Сумма равна ' ,s:20:10)

END.

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму. Что он напечатает, если: Строки s:=s+a и end {for} поменять местами. VAR   i,N:Integer;   a,s:Real; BEGIN  ReadLn(N);  s:=0;  for i:=1 to N do  begin   ReadLn(a);    s:=s+a  end {for};  WriteLn(‘Сумма равна ' ,s:20:10) END.

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму.

Что он напечатает, если:

  • Строки s:=s+a и end {for} поменять местами.

VAR i,N:Integer;

a,s:Real;

BEGIN

ReadLn(N);

s:=0;

for i:=1 to N do begin

ReadLn(a);

s:=s+a

end {for};

WriteLn(‘Сумма равна ' ,s:20:10)

END.

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму. Что он напечатает, если: Вместо for i:=1 to N написать for i:=2 to N. VAR   i,N:Integer;   a,s:Real; BEGIN  ReadLn(N);  s:=0;  for i:=1 to N do  begin   ReadLn(a);    s:=s+a  end {for};  WriteLn(‘Сумма равна ' ,s:20:10) END.

Задача: В компьютер вводится N чисел. Вычислить и один раз напечатать их сумму.

Что он напечатает, если:

  • Вместо for i:=1 to N написать for i:=2 to N.

VAR i,N:Integer;

a,s:Real;

BEGIN

ReadLn(N);

s:=0;

for i:=1 to N do begin

ReadLn(a);

s:=s+a

end {for};

WriteLn(‘Сумма равна ' ,s:20:10)

END.

Самостоятельная работа 1 вариант 2 вариант  Вычислить кубы чисел первой сотни натуральных чисел.  Вычислить абсолютное значение отрицательных чисел от -100. Используйте три вида циклов

Самостоятельная работа

  • 1 вариант
  • 2 вариант

Вычислить кубы чисел первой сотни натуральных чисел.

Вычислить абсолютное значение отрицательных чисел от -100.

Используйте три вида циклов

МАССИВЫ ПМ.02 РАЗРАБОТКА, ВНЕДРЕНИЕ И АДАПТАЦИЯ ОТРАСЛЕВОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

МАССИВЫ

ПМ.02 РАЗРАБОТКА, ВНЕДРЕНИЕ

И АДАПТАЦИЯ ОТРАСЛЕВОГО

ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

МАССИВ - наиболее широко используемый структурированный тип данных, предназначенный для хранения нескольких однотипных элементов. Массив обозначается одним именем. Так всю совокупность действительных чисел  1.6, 14.9, -5.0, 8.5, 0.46     можно считать массивом и обозначить одним именем, например А. Образующие массив переменные называются элементами массива . Каждый элемент массива обозначается именем массива с индексом, заключенным в квадратные скобки.  A[1], A[2], A[3], ..., A[n]. Индекс определяет положение элемента массива данных относительно его начала. Для рассмотренного выше примера элементами массива А являются:  A[1]=1.6, A[2]=14.9, A[3]=-5.0, A[4]=8.5, A[5]=0.46 1.6 14.9 -5.0 8.5 0.46

МАССИВ - наиболее широко используемый структурированный тип данных, предназначенный для хранения нескольких однотипных элементов.

Массив обозначается одним именем. Так всю совокупность действительных чисел

1.6, 14.9, -5.0, 8.5, 0.46

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

A[1], A[2], A[3], ..., A[n].

Индекс определяет положение элемента массива данных относительно его начала.

Для рассмотренного выше примера элементами массива А являются:

A[1]=1.6, A[2]=14.9, A[3]=-5.0, A[4]=8.5, A[5]=0.46

1.6

14.9

-5.0

8.5

0.46

№ элемента 1 5 2 -7 3 а[1] 6 а[2] 4 2 а[3] 5 6 3 а[4] -4 а[5] 7 3 8 -8 9 1 10 -2 а[10] Значение элемента Обозначение элемента массива

элемента

1

5

2

-7

3

а[1]

6

а[2]

4

2

а[3]

5

6

3

а[4]

-4

а[5]

7

3

8

-8

9

1

10

-2

а[10]

Значение элемента

Обозначение

элемента массива

МАССИВЫ Описание массива

МАССИВЫ

Описание массива

  • Для того чтобы задать массив, необходимо в разделе описания переменных ( var ) указать его размеры и тип его компонент.
  • Общий вид описания (одномерного) массива:
  • array[ ] of ;
  • Чаще всего это трактуется так:
  • array[..] of ;
МАССИВЫ

МАССИВЫ

  • Общий вид описания (одномерного) массива:
  • array[ ] of ;
  • Например , одномерный (линейный) массив, состоящий не более чем из 10 целых чисел, можно описать следующим образом:
  • var a1: array [1..10] of integer;
НУМЕРАЦИЯ

НУМЕРАЦИЯ

  • Нумерация компонент массива не обязана начинаться с 1 или с 0 - вы можете описывать массив, пронумерованный любыми целыми числами.
  • Необходимо лишь, чтобы номер последней компоненты был больше, чем номер первой:
  • var a1: array [-5..4] of integer;
НУМЕРАЦИЯ

НУМЕРАЦИЯ

  • Собственно говоря, нумеровать компоненты массива можно не только целыми числами. Любой порядковый тип данных (перечислимый, интервальный, символьный, логический, а также произвольный тип, созданный на их основе) имеет право выступать в роли нумератора.
  • Таким образом, допустимы следующие описания массивов:
  • type char = 'a','c'..'z'; (- отсутствует символ "b")
  • var a1: array[char] of integer; - 256 компонент
  • a2: array [char] of integer; - 256 целых компонент
  • a3: array [shortint] of real; - 256 вещественных компонент
Нумерация

Нумерация

  • Общий размер массива не должен превосходить 65 520 байт.
  • Следовательно, попытка задать массив a4:array[integer] of byte ; не увенчается успехом, поскольку тип integer покрывает 65 535 различных элементов. А про тип longint в данном случае лучше и вовсе не вспоминать.
  • Тип компонент массива может быть любым:
  • var a4: array[10..20] of real; - массив из компонент простого типа
  • a5: array[0..100] of record1; - массив из записей
  • a6: array[-10..10] of ^string; - массив из указателей на строки
  • a7: array[-1..1] of file; - массив из имен файловых переменных
  • a8: array[1..100] of array[1..100] of char; - двумерный массив (массив векторов)
Нумерация

Нумерация

  • Для краткости и удобства многомерные массивы можно описывать и более простым способом:
  • var a9: array[1..10,1..20] of real; - двумерный массив 10 х 20
  • a10: array[boolean, -1..1,char, -10..10] of word; - четырехмерный массив 2 х 3 х 256 х 21
  • Общее ограничение на размер массива - не более 65 520 байт - сохраняется и для многомерных массивов.
  • Количество компонент многомерного массива вычисляется как произведение всех его "измерений".
  • Таким образом , в массиве а9 содержится 200 компонент, а в массиве а10 - 32 256 компонент.
Описание переменных размерностей Если ваша программа должна обрабатывать матрицы переменных размерностей (скажем, N по горизонтали и М по вертикали), то вы столкнетесь с проблемой изначального задания массива, ведь в разделе var не допускается использование переменных. Следовательно, самый логичный, казалось бы, вариант var m,n: integer; a: array[1..m,1..n] of real; придется отбросить.

Описание переменных размерностей

  • Если ваша программа должна обрабатывать матрицы переменных размерностей (скажем, N по горизонтали и М по вертикали), то вы столкнетесь с проблемой изначального задания массива, ведь в разделе var не допускается использование переменных.

Следовательно, самый логичный, казалось бы, вариант

var m,n: integer; a: array[1..m,1..n] of real;

придется отбросить.

Описание переменных размерностей Предположим, однако, что вам известны максимальные границы, в которые могут попасть индексы обрабатываемого массива. Скажем, N и М заведомо не могут превосходить 100. Тогда можно выделить место под наибольший возможный массив, а реально работать только с малой его частью: const nnn=100; var a: array[1..nnn,1..nnn] of real;    m,n: integer;

Описание переменных размерностей

  • Предположим, однако, что вам известны максимальные границы, в которые могут попасть индексы обрабатываемого массива.
  • Скажем, N и М заведомо не могут превосходить 100. Тогда можно выделить место под наибольший возможный массив, а реально работать только с малой его частью:

const nnn=100;

var a: array[1..nnn,1..nnn] of real;

m,n: integer;

Обращение к компонентам массива

Обращение к компонентам массива

  • Массивы относятся к структурам прямого доступа. Это означает, что возможно напрямую (не перебирая предварительно все предшествующие компоненты) обратиться к любой интересующей нас компоненте массива.
  • Доступ к компонентам линейного массива осуществляется так:
  • []
  • а многомерного - так:
  • [,_,]
Обращение к компонентам массива

Обращение к компонентам массива

  • ПРАВИЛА употребления индексов при обращении к компонентам массива таковы:
  • Индекс компоненты может быть константой, переменной или выражением , куда входят операции и вызовы функций.
  • Тип каждого индекса должен быть совместим с типом , объявленным в описании массива именно для соответствующего "измерения"; менять индексы местами нельзя .
  • Количество индексов не должно превышать количество "измерений" массива. Попытка обратиться к линейному массиву как к многомерному обязательно вызовет ошибку. А вот обратная ситуация вполне возможна: например, если вы описали N-мерный массив, то его можно воспринимать как линейный массив, состоящий из (N-1)-мерных массивов.
0,sgn(x),'!',abs(k*5)]:= 0;" width="640"

Обращение к компонентам массива

  • Примеры использования компонент массива:

a2['z']:= a2['z']+1;

a3[-10]:= 2.5;

a3[i+j]:= a9[i,j];

a10[x0,sgn(x),'!',abs(k*5)]:= 0;

Задание массива константой

Задание массива константой

  • Для того чтобы не вводить массивы вручную во время отладки программы (особенно если они имеют большую размерность ), можно пользоваться не только файлами . Существует и более простой способ, когда входные данные задаются прямо в тексте программы при помощи типизированных констант .
  • Если массив - линейный (вектор) , то начальные значения для компонент этого вектора задаются через запятую , а сам вектор заключается в круглые скобки .
Задание массива константой

Задание массива константой

  • Многомерный массив также можно рассматривать как линейный, предполагая, что его компонентами служат другие массивы.
  • Таким образом, для системы вложенных векторов действует то же правило задания типизированной константы : каждый вектор ограничивается снаружи круглыми скобками.
  • Исключение составляют только массивы, компонентами которых являются величины типа char . Такие массивы можно задавать проще: строкой символов .
Задание массива константой Примеры задания массивов типизированными константами: type mass = array[1..3,1..2] of byte; const a: array[-1..1] of byte = (0,0,0); {линейный} b: mass = ((1,2),(3,4),(5,6)); {двумерный} s: array[0..9] of char = '0123456789';

Задание массива константой

  • Примеры задания массивов типизированными константами:

type mass = array[1..3,1..2] of byte;

const a: array[-1..1] of byte = (0,0,0); {линейный}

b: mass = ((1,2),(3,4),(5,6)); {двумерный}

s: array[0..9] of char = '0123456789';

  • Замечание : Невозможно задать неименованную или нетипизированную константу, относящуюся к типу данных array .
Ввод и вывод одномерного массива

Ввод и вывод одномерного массива

  • Описание типа массива задается следующим образом:
  • type имя типа = array[ список индексов ] of тип
  • имя типа  - правильный идентификатор; 
  • список индексов  - список одного или нескольких индексных типов, разделенных запятыми; 
  • тип  - любой тип данных.
  • Вводить и выводить массивы можно только поэлементно.
Ввод и вывод одномерного массива const  n = 5; type  mas = array[1..n] of integer; var  a: mas; i: byte; begin  writeln('введите элементы массива');  for i:=1 to n do readln(a[i]);  writeln('вывод элементов массива:');  for i:=1 to n do write(a[i]:5); end.

Ввод и вывод одномерного массива

const

n = 5;

type

mas = array[1..n] of integer;

var

a: mas; i: byte;

begin

writeln('введите элементы массива');

for i:=1 to n do readln(a[i]);

writeln('вывод элементов массива:');

for i:=1 to n do write(a[i]:5);

end.

Ввод и вывод одномерного массива

Ввод и вывод одномерного массива

  • Определить переменную как массив можно и непосредственно при ее описании, без предварительного описания типа массива, например:
  • var a,b,c: array[1..10] of integer;
  • Если массивы a и b описаны как:
  • var a = array[1..5] of integer; b = array[1..5] of integer;
  • то переменные a и b считаются разных типов. Для обеспечения совместимости применяйте описание переменных через предварительное описание типа.
1 Способ (заполнение с клавиатуры. Динамический ввод данных) Var  M:array[1..10] of integer;  I: byte; Begin  For I:=1 To 10 Do Begin  Write('Введите ',I,' значение ');  ReadLn(M[I]);  End; End . Ввод с клавиатуры

1 Способ (заполнение с клавиатуры. Динамический ввод данных)

Var

M:array[1..10] of integer;

I: byte;

Begin

For I:=1 To 10 Do Begin

Write('Введите ',I,' значение ');

ReadLn(M[I]);

End;

End .

Ввод с клавиатуры

2 Способ (с использованием генератора случайных чисел) Var  M: array[1..25] of integer;  I: byte; Begin  For I:=1 To 25 Do Begin  M[I]:=Random(50);  Write(M[I]:4);  End; End . Заполнение случайными числами Вывод массива на экран

2 Способ (с использованием генератора случайных чисел)

Var

M: array[1..25] of integer;

I: byte;

Begin

For I:=1 To 25 Do Begin

M[I]:=Random(50);

Write(M[I]:4);

End;

End .

Заполнение случайными числами

Вывод массива на экран

3 Способ (статический ввод данных) Const  M: array[1..12] of integer = (31,28,31,30,31,30,31,31,30,31,30,31); Var  I: Integer; Begin  For I:=1 To 9 Do  Write(M[I]:3); End . Задание массива как постоянной Вывод массива на экран

3 Способ (статический ввод данных)

Const

M: array[1..12] of integer = (31,28,31,30,31,30,31,31,30,31,30,31);

Var

I: Integer;

Begin

For I:=1 To 9 Do

Write(M[I]:3);

End .

Задание массива как постоянной

Вывод массива на экран

Алгоритмы поиска и присвоения значений элементам массива Примеры решения задач

Алгоритмы поиска и присвоения значений элементам массива

Примеры решения задач

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

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

Составить программу обработки массива размерностью n, заполненного целыми числами, введенными с клавиатуры. USES Crt; CONST N=10;  VAR  A:ARRAY[0..N] OF INTEGER;  I:BYTE;  BEGIN  ClrScr; FOR I:=1 TO N DO Begin  Write('Введите ',I,' элемент массива '); ReadLn(A[I]);  End; Объявление массива целых чисел из 10 элементов Заполнение массива с клавиатуры

Составить программу обработки массива размерностью n, заполненного целыми числами, введенными с клавиатуры.

USES Crt;

CONST N=10;

VAR

A:ARRAY[0..N] OF INTEGER;

I:BYTE;

BEGIN

ClrScr;

FOR I:=1 TO N DO Begin

Write('Введите ',I,' элемент массива '); ReadLn(A[I]);

End;

Объявление массива целых чисел из 10 элементов

Заполнение массива с клавиатуры

0 THEN WriteLn('Положит элемент = ',A[I],' его индекс = ',I); END. Проверка положительного элемента Вывод положительного элемента и его номера" width="640"

Вывести индексы и значения положительных элементов массива

USES Crt;

CONST N=10;

VAR

A:ARRAY[0..N] OF INTEGER;

I:BYTE;

BEGIN

ClrScr;

FOR I:=1 TO N DO Begin

Write('Введите ',I,' элемент массива '); ReadLn(A[I]);

End;

FOR I:=1 TO N DO

IF A[I]0 THEN WriteLn('Положит элемент = ',A[I],' его индекс = ',I);

END.

Проверка положительного элемента

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

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

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

Составить программу вычисления и печати значений функции Y=sin(x-1)/2x. Значения аргументов задать в массиве X, состоящего из 6 элементов. Значения функции записать в массив Y.

Составить программу вычисления и печати значений функции Y=sin(x-1)/2x. Значения аргументов задать в массиве X, состоящего из 6 элементов. Значения функции записать в массив Y.

Значения аргументов задать в массиве X, состоящего из 6 элементов. USES Crt;  VAR  X,Y:ARRAY[0..6] OF REAL;  I: BYTE;  BEGIN  ClrScr;  FOR I:=1 TO 6 DO Begin  Write('Введите ',I,' значение аргумента '); ReadLn(X[I]);  End;  Объявление двух массивов вещественных чисел из 6 элементов Заполнение одного массива с клавиатуры

Значения аргументов задать в массиве X, состоящего из 6 элементов.

USES Crt;

VAR

X,Y:ARRAY[0..6] OF REAL;

I: BYTE;

BEGIN

ClrScr;

FOR I:=1 TO 6 DO Begin

Write('Введите ',I,' значение аргумента '); ReadLn(X[I]);

End;

Объявление двух массивов вещественных чисел из 6 элементов

Заполнение одного массива с клавиатуры

Составить программу вычисления и печати значений функции Y=sin(x-1)/2x. Значения функции записать в массив Y. USES Crt;  VAR  X,Y:ARRAY[0..6] OF REAL;  I: BYTE;  BEGIN  ClrScr;  FOR I:=1 TO 6 DO Begin  Write('Введите ',I,' значение аргумента '); ReadLn(X[I]);  End;  FOR I:=1 TO 6 DO Begin  Y[I]:=SIN(X[I]-1)/(2*X[I]);  WriteLn(' X= ',X[I]:4:1,' Y=',Y[I]:5:2);  End;  END. Вычисление элементов второго массива Вывод элементов двух массивов

Составить программу вычисления и печати значений функции Y=sin(x-1)/2x. Значения функции записать в массив Y.

USES Crt;

VAR

X,Y:ARRAY[0..6] OF REAL;

I: BYTE;

BEGIN

ClrScr;

FOR I:=1 TO 6 DO Begin

Write('Введите ',I,' значение аргумента '); ReadLn(X[I]);

End;

FOR I:=1 TO 6 DO Begin

Y[I]:=SIN(X[I]-1)/(2*X[I]);

WriteLn(' X= ',X[I]:4:1,' Y=',Y[I]:5:2);

End;

END.

Вычисление элементов второго массива

Вывод элементов двух массивов

Составить программу вычисления и печати значений функции Y=sin(x-1)/2x. Значения аргументов задать в массиве X, состоящего из 6 элементов. Значения функции записать в массив Y.

Составить программу вычисления и печати значений функции Y=sin(x-1)/2x. Значения аргументов задать в массиве X, состоящего из 6 элементов. Значения функции записать в массив Y.

Дан массив M, состоящий из 30 элементов. Элементы массива - произвольные целые числа. Выдать на экран значение каждого пятого и положительного элемента. Указанные элементы выдать в строку.

Дан массив M, состоящий из 30 элементов. Элементы массива - произвольные целые числа. Выдать на экран значение каждого пятого и положительного элемента. Указанные элементы выдать в строку.

Дан массив M, состоящий из 30 элементов. Элементы массива - произвольные целые числа. USES Crt; VAR  M:ARRAY[0..30] OF INTEGER;  I: BYTE; BEGIN  ClrScr; Randomize;  WriteLn(' Значения элементов массива');  FOR I:=1 TO 30 DO Begin  M[I]:=Random(20)-4; Write(M[I]:3);  End; WriteLn; Объявление массива целых чисел из 30 элементов Заполнение массива случайными числами

Дан массив M, состоящий из 30 элементов. Элементы массива - произвольные целые числа.

USES Crt;

VAR

M:ARRAY[0..30] OF INTEGER;

I: BYTE;

BEGIN

ClrScr; Randomize;

WriteLn(' Значения элементов массива');

FOR I:=1 TO 30 DO Begin

M[I]:=Random(20)-4; Write(M[I]:3);

End; WriteLn;

Объявление массива целых чисел из 30 элементов

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

0 THEN Write(M[I]:3); I:=I+5; End; END. Указание начального значения – номера выводимого элемента Вывод каждого пятого и положительного, в строку" width="640"

Выдать на экран значение каждого пятого и положительного элемента. Указанные элементы выдать в строку.

USES Crt;

VAR

M:ARRAY[0..30] OF INTEGER;

I: BYTE;

BEGIN

ClrScr; Randomize;

WriteLn(' Значения элементов массива');

FOR I:=1 TO 30 DO Begin

M[I]:=Random(20)-4; Write(M[I]:3);

End; WriteLn;

I:=5;

WriteLn(' Значения каждого пятого и положительного элемента массива');

While I

IF M[I] 0 THEN Write(M[I]:3);

I:=I+5;

End;

END.

Указание начального значения – номера выводимого элемента

Вывод каждого пятого и положительного, в строку

Дан массив M, состоящий из 30 элементов. Элементы массива - произвольные целые числа. Выдать на экран значение каждого пятого и положительного элемента. Указанные элементы выдать в строку.

Дан массив M, состоящий из 30 элементов. Элементы массива - произвольные целые числа. Выдать на экран значение каждого пятого и положительного элемента. Указанные элементы выдать в строку.

Алгоритмы нахождения суммы, произведения и количества элементов массива. Работа с индексами элементов массива Примеры решения задач

Алгоритмы нахождения суммы, произведения и количества элементов массива. Работа с индексами элементов массива

Примеры решения задач

Определить сумму элементов массива Р(n), значения которых больше заданного числа Т

Определить сумму элементов массива Р(n), значения которых больше заданного числа Т

Определить элементы массива Р(n) Объявление массива целых чисел из 30 элементов USES Crt; CONST N=30; VAR  P:ARRAY[0..N] OF INTEGER; I,T:BYTE; S:INTEGER; BEGIN  ClrScr; Randomize;  WriteLn(' Значения элементов массива');  FOR I:=1 TO N DO Begin  P[I]:=Random(30); Write(P[I]:3);  End; WriteLn; Заполнение массива случайными числами

Определить элементы массива Р(n)

Объявление массива целых чисел из 30 элементов

USES Crt;

CONST N=30;

VAR

P:ARRAY[0..N] OF INTEGER; I,T:BYTE; S:INTEGER;

BEGIN

ClrScr; Randomize;

WriteLn(' Значения элементов массива');

FOR I:=1 TO N DO Begin

P[I]:=Random(30); Write(P[I]:3);

End; WriteLn;

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

T THEN S:=S+P[I]; { сумма элементов массива T } WriteLn(' Сумма элементов массива заданного значения = ',S); END. Вычисление суммы" width="640"

Определить сумму элементов массива Р(n), значения которых больше заданного числа Т

USES Crt;

Const N=30;

VAR

P:ARRAY[0..N] OF INTEGER;

I,T:BYTE; S:INTEGER;

BEGIN

ClrScr; Randomize;

WriteLn(' Значения элементов массива');

FOR I:=1 TO N DO Begin

P[I]:=Random(30); Write(P[I]:3);

End; WriteLn;

Write(' Введите значение переменной '); ReadLn(T);

S:=0;

FOR I:=1 TO N DO

IF P[I]T THEN S:=S+P[I]; { сумма элементов массива T }

WriteLn(' Сумма элементов массива заданного значения = ',S);

END.

Вычисление суммы

T THEN S:=S+P[I]; WriteLn(' Сумма элементов массива заданного значения = ',S); Ввод заданного числа Т Обнуление суммы Проверка условия и суммирование элементов массива Вывод полученной суммы" width="640"

Определить сумму элементов массива Р(n), значения которых больше заданного числа Т

Write(' Введите значение переменной '); ReadLn(T);

S:=0;

FOR I:=1 TO N DO

IF P[I]T THEN S:=S+P[I];

WriteLn(' Сумма элементов массива заданного значения = ',S);

Ввод заданного числа Т

Обнуление суммы

Проверка условия и суммирование элементов массива

Вывод полученной суммы

Определить сумму элементов массива Р(n), значения которых больше заданного числа Т

Определить сумму элементов массива Р(n), значения которых больше заданного числа Т

Дан массив целых чисел, состоящий из 25 элементов.  Подсчитать сумму элементов массива, произведение положительных и количество нулевых элементов.  Результаты вычислений вывести на экран.

Дан массив целых чисел, состоящий из 25 элементов. Подсчитать сумму элементов массива, произведение положительных и количество нулевых элементов. Результаты вычислений вывести на экран.

Определить элементы массива Р(n) Объявление массива целых чисел из 30 элементов USES Crt; CONST N=30; VAR  P:ARRAY[0..N] OF INTEGER; I,T:BYTE; S:INTEGER; BEGIN  ClrScr; Randomize;  WriteLn(' Значения элементов массива');  FOR I:=1 TO N DO Begin  P[I]:=Random(30); Write(P[I]:3);  End; WriteLn; Заполнение массива случайными числами

Определить элементы массива Р(n)

Объявление массива целых чисел из 30 элементов

USES Crt;

CONST N=30;

VAR

P:ARRAY[0..N] OF INTEGER; I,T:BYTE; S:INTEGER;

BEGIN

ClrScr; Randomize;

WriteLn(' Значения элементов массива');

FOR I:=1 TO N DO Begin

P[I]:=Random(30); Write(P[I]:3);

End; WriteLn;

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

Примеры для самостоятельного решения:

Примеры для самостоятельного решения:

  • Дан одномерный массив размерностью 10, заполненный целыми числами, введенными с клавиатуры, и величина N. Отрицательные элементы заменить на N. Измененный массив вывести на экран одной строкой.
  • Дан одномерный массив размерностью N, заполненный случайными числами в интервале от -15 до 20. Вывести на экран значения элементов массива, абсолютное значение которых 10.
  • Дан одномерный массив размерностью N, заполненный случайными числами. Каждый третий элемент массива возвести в квадрат, если элемент отрицательный. Измененный массив вывести на экран.
  • Составить программу вычисления и печати значений функции Y=(sinx+1)  cos4x. Значения аргументов задать в массиве X, состоящего из 10 элементов. Значения функции записать в массив Y.
  • Из элементов массива А, состоящего из 25 элементов, сформировать массив D той же размерности по правилу: первые 10 элементов находятся по формуле Di=Ai+i, остальные - по формуле Di=Ai-i.


Получите в подарок сайт учителя

Предмет: Информатика

Категория: Презентации

Целевая аудитория: 11 класс.
Урок соответствует ФГОС

Скачать
Обучение решению задач программирование на pascal

Автор: Алексей Юлия Вадимовна

Дата: 13.06.2014

Номер свидетельства: 103872

Похожие файлы

object(ArrayObject)#853 (1) {
  ["storage":"ArrayObject":private] => array(6) {
    ["title"] => string(63) "Синтаксис языка программирования."
    ["seo_title"] => string(33) "sintaksisiazykaproghrammirovaniia"
    ["file_id"] => string(6) "298546"
    ["category_seo"] => string(11) "informatika"
    ["subcategory_seo"] => string(5) "uroki"
    ["date"] => string(10) "1456338519"
  }
}
object(ArrayObject)#875 (1) {
  ["storage":"ArrayObject":private] => array(6) {
    ["title"] => string(110) "Вводный урок по теме: "Язык программирования Турбо Паскаль". "
    ["seo_title"] => string(60) "vvodnyi-urok-po-tiemie-iazyk-proghrammirovaniia-turbo-paskal"
    ["file_id"] => string(6) "167023"
    ["category_seo"] => string(11) "informatika"
    ["subcategory_seo"] => string(5) "uroki"
    ["date"] => string(10) "1423038792"
  }
}
object(ArrayObject)#853 (1) {
  ["storage":"ArrayObject":private] => array(6) {
    ["title"] => string(104) "Методическое пособие по программированию на языке Pascal ABC"
    ["seo_title"] => string(69) "mietodichieskoie-posobiie-po-proghrammirovaniiu-na-iazykie-pascal-abc"
    ["file_id"] => string(6) "250511"
    ["category_seo"] => string(11) "informatika"
    ["subcategory_seo"] => string(7) "prochee"
    ["date"] => string(10) "1447086463"
  }
}
object(ArrayObject)#875 (1) {
  ["storage":"ArrayObject":private] => array(6) {
    ["title"] => string(115) "ФОРМАЛИЗАЦИЯ языка танца (или сортировка одномерного массива) "
    ["seo_title"] => string(65) "formalizatsiia-iazyka-tantsa-ili-sortirovka-odnomiernogho-massiva"
    ["file_id"] => string(6) "246354"
    ["category_seo"] => string(11) "informatika"
    ["subcategory_seo"] => string(5) "uroki"
    ["date"] => string(10) "1446363231"
  }
}
object(ArrayObject)#853 (1) {
  ["storage":"ArrayObject":private] => array(6) {
    ["title"] => string(49) "разработка урока *Паскаль* "
    ["seo_title"] => string(23) "razrabotka-uroka-paskal"
    ["file_id"] => string(6) "148091"
    ["category_seo"] => string(11) "informatika"
    ["subcategory_seo"] => string(12) "planirovanie"
    ["date"] => string(10) "1419579672"
  }
}


Получите в подарок сайт учителя

Видеоуроки для учителей

Курсы для учителей

ПОЛУЧИТЕ СВИДЕТЕЛЬСТВО МГНОВЕННО

Добавить свою работу

* Свидетельство о публикации выдается БЕСПЛАТНО, СРАЗУ же после добавления Вами Вашей работы на сайт

Удобный поиск материалов для учителей

Ваш личный кабинет
Проверка свидетельства