понедельник, 9 декабря 2013 г.

Практическое задание по работе с графикой

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

Сохраните изображение в форматах GIF и JPEG, ответьте на вопросы:
- какой из форматов обеспечивает наилучшую степень сжатия?
- какой из форматов обеспечивает наименьшие потери качества изображения?

воскресенье, 8 декабря 2013 г.

понедельник, 18 ноября 2013 г.

Функции для строковых переменных

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

program Line_2;
  var
  S: String;
  Rez, P: integer;
  S2: string;
begin
  writeln ('Введите строку ');
  readln (S);
  Rez:=length(S);
  writeln ('Длина строки: ',Rez);
  Delete (S,5,5);
  writeln (S);
  S2:='А';
  P:=Pos(S2, S);
  writeln (P);
  Insert (S2,S,3);
  writeln (S);
end.

Домашнее задание (принимается как всегда в любом удобном для вас виде).

№3. Дана строка. Подсчитать в ней количество вхождений букв r, t, k.

№6. Дана строка символов, среди которых есть двоеточие (:). Определить, сколько символов ему предшествует.

понедельник, 11 ноября 2013 г.

Строковые переменные

Дорогие друзья! Привожу пример нашей первой программы на работу со строками.

program Line;
 var
  Name1: string[20];
  Name2: string[20];
  Title: string[40];
  Rez: string [70];
begin
 Name1:='Глебова';
 Name2:=' Катя';
 Title:=Name1+Name2;
 writeln (Title);
 Name1:='Кондратьев';
 Name2:='Иванов';
 
???

end.

Домашнее задание. Дописать программу,чтобы на экране было сообщение о том, какая фамилия идёт раньше по алфавиту.

понедельник, 21 октября 2013 г.

Задачи по двумерным массивам

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

Задача 6. Заполнить случайным образом двумерный массив размерности n x n. Подсчитать количество чётных элементов в каждой строке. Результат вывести на экран.

Решение:
program DvMas;
 var A: array[1..100,1..100] of integer;
   i, j, n, k: integer;
begin
 write ('n = '); readln (n);
 for i:=1 to n do
  begin
   for j:=1 to n do
    begin
     A[i,j]:=random(100);
     write (A[i,j]:4);
    end;
    writeln;
  end;
  for i:=1 to n do
  begin
   k:=0;
   for j:=1 to n do
    if (A[i,j] mod 2=0) and (A[i,j]<>0) then k:=k+1;
   writeln ('Строка ', i ,', чётных эл-ов - ', k)
   end;
end.

Домашняя работа.
Задача 7. Заполнить случайным образом двумерный массив размерности n x n. Обнулить чётные элементы (делятся на два). Вывести на экран исходный и итоговый массив.

Посмотрите на предыдущую задачу - это поможет вам в решении задачи 7.

понедельник, 14 октября 2013 г.

Двумерные массивы

Двумерный массив - это матрица из компонентов одного типа, расположение каждого элемента в которой определяется номером строки и номером столбца.



Сегодня на уроке мы составили программу, которая заполняет двумерный массив 5x10 случайными числами и выводит его на экран.

program DvMas;
 var A: array[1..5,1..10] of integer;
 {переменные для хранения индексов строк и столбцов}
  i, j: integer;
begin {заполнение массива}
 for i:=1 to 5 do {i пробегает по строчкам}
   {вложенный цикл}
   for j:=1 to 10 do  {j пробегает по столбцам}
     A[i,j]:=random(100); {запись случайного числа в i-ую строку, j-ый столбец}
for i:=1 to 5 do {цикл для вывода}
   begin
     for j:=1 to 10 do write (A[i,j]:4); {вывод строки}
      writeln; {переход на новую строку} 
   end;
end.

Задание на дом:

  • Изменить программу так, чтобы задание и вывод элементов массива происходили с использованием одного вложенного цикла. Подсказка: объединяя циклы, не забудьте об операторных скобках begin end.
  • Дописать программу так, чтобы в двумерном массиве производился поиск максимального элемента и осуществлялся его вывод на экран. Подсказка: нужно вспомнить, как мы искали максимальный элемент в одномерном массиве.
Результаты работы принимаю в любом виде, но лучше сделать скриншот экрана с рабочей программой или прислать сам файл. Успешной работы!