понедельник, 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.
  • Дописать программу так, чтобы в двумерном массиве производился поиск максимального элемента и осуществлялся его вывод на экран. Подсказка: нужно вспомнить, как мы искали максимальный элемент в одномерном массиве.
Результаты работы принимаю в любом виде, но лучше сделать скриншот экрана с рабочей программой или прислать сам файл. Успешной работы!



вторник, 14 мая 2013 г.

Д.з. по информатике для уезжающих-приезжающих

Решите задачу двумя способами: с использованием цикла с параметром и одного из двух других типов цикла. Дано натуральное число N. Вычислить произведение первых N сомножителей: P=2/3*4/5*6/7*...*(2N)/(2N+1)

Опирайтесь на пример, решённый на уроке.

Решение задачи на нахождение результата:
 S=1-1/2+1/4-1/8+...+(-1)^N*1/2^N

 Используется цикл с постусловием:

 program summ;
 var S: real; N, i: integer; a: real;
 begin write ('N - ? ');
 readln (N);
 a:=1; S:=0; i:=0;
 repeat i:=i+1; S:=S+a; a:=a/(-2);
 until i=N;
 write ('S = ', S)
 end.

 Используется цикл с параметром:

 program summ;
 var S: real; N, i: integer; a: real;
 begin write ('N - ? ');
 readln (N);
 a:=1; S:=0;
 for i:=1 to N do
 begin S:=S+a; a:=a/(-2) end;
 write ('S = ', S)
 end.

понедельник, 25 февраля 2013 г.

Вопросы по МКТ (для "отличников")

Основы молекулярно-кинетической теории. 10 класс

1. Зарядовое число. Обозначение, как найти. Примеры.
2. Массовое число. Обозначение, как найти. Примеры.
3. Как найти число нейтронов в ядре
4. Что такое ионы? Примеры.
5. Что такое изотопы? Примеры.
6. Дефект массы.
7. Атомная единица массы.
8. Относительная атомная масса.
9. Моль.
10. Молярная масса. Примеры нахождения.
11. Постоянная Авогадро.
12. Фазовый переход.
13. Связь между температурными шкалами Цельсия и Кельвина (абсолютной температурной шкалой).
14. Связь между кинетической энергией и температурой.
15. Постоянная Больцмана.
16. Универсальная газовая постоянная.
17. Основное уравнение МКТ.

вторник, 12 февраля 2013 г.

Домашнее по информатике

Задача. Найти произведение цифр четырёхзначного числа, введённого с клавиатуры.

Что нужно сделать: 
- разложить в голове по полочкам про операции mod и div (обратитесь к записям в тетради или в сеть: примеры программ);
- составить блок-схему алгоритма к задаче или (смысл слова понятен?) написать программу (можно в тетради, можно в среде программирования).

Что можно сделать дома на компьютере для облегчения работы:
- скачать и установить PascalABC c офсайта (установочный файл с Microsoft .NET Framework v4.0 весит 121 Мб, можно скинуть у Наташи Б. или из школьной локальной сети) - после чего в среде можно решать данную задачу
или (смысл слова понятен?)
- скачать и работать в более лёгкой среде Algo (установка не требуется, требуется только распаковка) с сайта.

Желаю успехов завтра и всегда!

вторник, 22 января 2013 г.

Язык блок-схем

Вопросы и задания:

1. Зачем использовать блок-схемы? (если сразу не ответить, нужно подумать в течение урока, а ответ нужно оставить здесь в комментариях).

2. Как на языке блок-схем описываются:
- начало и конец алгоритма
- ввод и вывод данных
- проверка условия
- обработка данных
- линия потока?
Начертите эти обозначения в тетради.

3. Рассмотрите примеры алгоритмов на языке блок-схем в задачнике 1. Стр. 212, пример 3,4. 

4.  Ознакомьтесь со словесной формой записи алгоритма Евклида (нахождение НОД двух чисел). Составьте блок-схему этого алгоритма. Используйте редактор блок-схем.

1. Задать два числа A и B.
2. Если A=B, то взять любое из этих чисел в качестве ответа и остановиться, в противном случае продолжить выполнение алгоритма.
3. Определить большее из чисел.
4. Заменить большее из чисел разностью большего и меньшего из чисел.
5. Повторить алгоритм с шага 2. 

5. Составьте блок-схемы следующих алгоритмов (задачник 2): №6 с.213, №8 с. 214, №18 с.215, №20 с.215.

Домашнее задание: записать в словесной и графической форме алгоритм нахождения остатка от деления одного числа на другое.

Ответы на задания 4, 5 и домашнее задание можно предоставить как в бумажном, так и в электронном виде любым удобным для вас способом (e-mail, skype, vk и др.).

Оценочная таблица

Сроки выполнения работы: до 22 ч 00 мин 28 января

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

Алгоритмы

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

1. Найдите и и запишите определение алгоритма.
2. Памятник кому вы видите на картинке? Запишите кратко информацию об этом человеке в тетрадь.

3. Приведите пример алгоритма из вашей жизни в комментариях к этому сообщению.
4. Какие свойства алгоритма вам известны? Запишите их в тетради.
5. Как называется алгоритм, записанный на "понятном" компьютеру языке? Что представляет компьютер с точки зрения алгоритмизации? (ответьте устно).
6. Коллективная работа: создаём схему развития языков программирования. Отразите основные этапы, примеры, включите изображения, ссылки. Можно распределить работу: отдельную эпоху отдельной группе. Очень многое зависит от того, насколько хорошо вы умеет распределять обязанности в классе. Пароль для работы: алгоритм
7. Работа в тетради: основные типы алгоритмических структур. Побеседуем? Почертим? Порассуждаем?