Образовательный блог в котором отражаются мои интересы как учителя.
Поиск по этому блогу
суббота, 31 декабря 2016 г.
понедельник, 26 декабря 2016 г.
Работа с массивами С25 ЕГЭ
Преложено пять задач С25
1. Дан целочисленный массив из 20 элементов. Элементы массива могут принимать целые значения от 0 до 10000 включительно. Опишите на естественном языке или на одном из языков программирования алгоритм, позволяющий найти и вывести максимальное значение среди трёхзначных элементов массива, не делящихся на 9. Если в исходном массиве нет элемента, значение которого является трёхзначным числом и при этом не кратно 9, то выведите сообщение «Не найдено». Исходные данные объявлены так, как показано ниже на примерах для некоторых языков программирования и естественного языка. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.
Решение:
1. Дан целочисленный массив из 20 элементов. Элементы массива могут принимать целые значения от 0 до 10000 включительно. Опишите на естественном языке или на одном из языков программирования алгоритм, позволяющий найти и вывести максимальное значение среди трёхзначных элементов массива, не делящихся на 9. Если в исходном массиве нет элемента, значение которого является трёхзначным числом и при этом не кратно 9, то выведите сообщение «Не найдено». Исходные данные объявлены так, как показано ниже на примерах для некоторых языков программирования и естественного языка. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.
Решение:
пятница, 23 декабря 2016 г.
Самостоятельная работа_IF
Теоретическая часть
1. Вычислить значение логического выражения если А=Истина, В=Ложь, С=Ложь:
1. Вычислить значение логического выражения если А=Истина, В=Ложь, С=Ложь:
А) А или не (А и B) или С; Б) не А или А и (В или С);Ответ укажите буква- значение (истина или ложь).
В) (А или В и не С) и С Г) (не А или не В) и не С;
Д) (не А или не В) и (А или В); Е) А и В или А и С или не С.
четверг, 22 декабря 2016 г.
Сугубо о сугубом
Когда вы сами в последний раз использовали слово
"сугубый"? А если использовали недавно, то в каком значении, что вы
имели в виду? Сплошные вопросы. Честно сказать, немедленный и однозначный ответ
я и сама давать бы не стала. Потому что наречием "сугубо", как и
многие, пользуюсь постоянно, а вот прилагательным...
вторник, 20 декабря 2016 г.
Школьник придумал компьютерную мышь для инвалидов
Старшеклассник из Кушвы Свердловской области Сергей Халявин создал мышь, которой можно управлять компьютером без рук.
Кушвинская школа N 1 входит в программу инклюзивного образования, позволяющего детям-инвалидам лучше адаптироваться к жизни. В коррекционном классе учится и друг Сергея, у которого парализованы руки. Чтобы облегчить ему работу на компьютере, Сергей и решил изготовить электронный манипулятор для ноги.
Стандартные математические функции Турбо Паскаля
Обращение
|
Тип аргумента
|
Тип результата
|
Примечание
|
Abs(x)
|
Real, integer
|
Тип аргумента
|
Модуль аргумента
|
ArcTan(x)
|
Real, integer
|
Real
|
Арктангенс (значение в радианах)
|
Cos(x)
|
Real, integer
|
Real
|
Косинус, угол в радианах
|
Exp(x)
|
Real, integer
|
Real
|
Экспонента
|
Frac(x)
|
Real
|
Real
|
Дробная часть числа
|
Int(x)
|
Real, integer
|
Real
|
Целая часть числа
|
Ln(x)
|
Real, integer
|
Real
|
Логарифм натуральный
|
суббота, 17 декабря 2016 г.
Процедуры преобразования типов в Паскале
Str(x, S) преобразует число x в строковый формат. Здесь x – любое числовое выражение, S – строковая переменная. В процедуре есть возможность задавать формат числа x. Например, str(x: 8: 3, S), где 8 – общее число знаков в числе x, а 3 – число знаков после запятой.
Оператор процедуры
|
Значение S
|
Str (sin(1):6:4, S)
|
‘0.0175’
|
Str (3456, S)
|
‘3456’
|
Val(S, x, kod) преобразует строку символов S в число x. Здесь S – строковое выражение, x – числовая переменная (именно туда будет помещен результат), kod – целочисленная переменная (типа integer), которая равна номеру позиции в строке S, начиная с которой произошла ошибка преобразования, если преобразование прошло без ошибок, то переменная kod равна 0.
Тип X
|
Оператор процедуры
|
Значение X
|
Значение kod
|
Real
|
Val(’12.34’, x, kod)
|
12.34
|
0
|
Integer
|
Val(’12.34’, x, kod)
|
12
|
3
|
четверг, 15 декабря 2016 г.
Стандартные процедуры для работы со строками в Паскале
Delete (S, poz, n) удаляет из строки S, начиная с позиции poz, подстроку из n символов. Здесь S – строковая переменная (в данном случае нельзя записать никакое другое строковое выражение, кроме имени строковой переменной, т.к. только с именем переменной связана область памяти, куда будет помещен результат выполнения процедуры); poz, n – любые целочисленные выражения.
Исходное значение S
|
Оператор процедуры
|
Конечное зн-е S
|
‘abcdefg’
|
Delete(s, 2, 3)
|
‘aefg’
|
Insert(subS, S, poz) вставляет в строку S, начиная с позиции poz, подстроку subS. Здесь subS – любое строковое выражение, S – строковая переменная (именно ей будет присвоен результат выполнения процедуры), poz – целочисленное выражение.
Исходное
значение S
|
Оператор
процедуры
|
Конечное
зн-е S
|
‘рис.
|
Insert(‘№’,
S, 6)
|
‘рис. №2’
|
среда, 14 декабря 2016 г.
Стандартные функции для работы со строками в Паскале
Copy (S, poz, n) выделяет из строки S, начиная с позиции poz, подстроку из n символов. Здесь S – любое строковое выражение, poz, n – целочисленные выражения.
Значение S
|
Выражение
|
Результат
|
‘строка символов’
|
Copy(S,3,3)
|
рок
|
Concat (s1, s2,...,sn) выполняет слияние строк s1, s2,...,sn в одну строку.
Выражение
|
Результат
|
Concat(‘язык’, ‘’, ‘Pascal’)
|
‘язык Pascal’
|
Length(S) определяет текущую длину строкового выражения S. Результат – значение целого типа.
Значение S
|
Выражение
|
Результат
|
‘(а+в)*с’
|
Length(s)
|
7
|
Pos(subS, S) определяет позицию первого вхождения подстроки subS в строку S. Результат – целое число, равное номеру позиции, где находится первый символ искомой подстроки. Если вхождение подстроки не обнаружено, то результат функции будет равен 0.
Значение S
|
Выражение
|
Результат
|
‘предложение’
|
Pos(‘е’, S)
|
3
|
‘предложение’
|
Pos(‘a’, S)
|
0
|
понедельник, 5 декабря 2016 г.
Час кода
Хакасский Государственный университет им. Н.Ф.Катанова, Институт информационных технологий и инженерного образования, школа программистов.
Приглашаем к участию в мероприятиях
акции «Час кода» в
России
школьников, студентов,
педагогов и родителей
с 5 по 10 декабря
Четвертый год продолжаем
традицию размещать планы и информацию о проведении мероприятий в рамках акции в
университете и в образовательных учреждениях Хакасии
Планы и информацию о проведении мероприятий акции с фото и видео
материалами для размещения на указанных сайтах присылайте
пятница, 2 декабря 2016 г.
Решение олимпиадной задачи
Задача A. "Световой луч" (10 баллов)
Дано действительное число φ (0<φ<π). Из точки (1, 1) под углом φ к прямой х=1 выпущен световой луч (см. рис.). Найти точку оси ординат, в которой луч падает на эту ось. Если φ<π/4, то луч сначала отразится по закону "угол падения равен углу отражения" от оси абсцисс.Формат входных данных:
С клавиатуры вводиться единственное число φ (0 < φ < 3,14159)
Формат выходных данных:
Вывести на экран единственное число: значение ординаты точки пересечения светового луча с осью ординат. Число вывести с точностью до трех знаков после запятой.
Пример:
Ввод
|
Вывод
|
|
0.78539 1.05719 |
0.000 0.436 |
Программа на языке Паскаль:
суббота, 26 ноября 2016 г.
Калитка в заборе (задача)
Задача взята из этапа Всероссийской олимпиады школьников по информатике. Буду рад если ее решение будет полезно моим коллегам в подготовке учеников к подобным соревнованиям.
Дядя Фёдор, кот Матроскин и Шарик решили обновить забор вокруг своего сада в Простоквашино. Матроскин и Шарик, недолго думая, вкопали N столбов вдоль одной из сторон участка. Это очень сильно расстроило Дядю Фёдора, так как его друзья забыли о самом главном — калитка должна находиться именно на этой стороне, и для неё необходимо было оставить проём шириной как минимум W. Теперь им придётся выкапывать некоторые столбы.
Дядя Фёдор, кот Матроскин и Шарик решили обновить забор вокруг своего сада в Простоквашино. Матроскин и Шарик, недолго думая, вкопали N столбов вдоль одной из сторон участка. Это очень сильно расстроило Дядю Фёдора, так как его друзья забыли о самом главном — калитка должна находиться именно на этой стороне, и для неё необходимо было оставить проём шириной как минимум W. Теперь им придётся выкапывать некоторые столбы.
Чтобы работа не пропадала даром, выкопать надо как можно меньше столбов. Помогите Дяде Фёдору определить, какие именно столбы надо выкопать. После выкапывания столбов должен найтись промежуток (между двумя оставшимися столбами, или между оставшимся столбом и концом стороны участка, или между двумя концами стороны участка) ширины больше или равной W.
суббота, 19 ноября 2016 г.
Ввод из файла
Язык Pascal позволяет вводить исходные данные для программы не только с клавиатуры, но и из текстового файла. Чтобы воспользоваться этой возможностью, нужно объявить файловую переменную типа text, назначить ей при помощи инструкции assing имя файла, из которого будут читаться данные, открыть файл для чтения (ввода) и прочитать (ввести) данные, используя инструкцию read или readln.
Рассмотрим это по подробнее.
Открытие файла
Открытие файла для ввода (чтения) выполняется вызовом процедуры reset, имеющей один параметр – файловую переменную. Перед вызовом процедуры reset файловой переменной назначается имя файла вызовом процедуры assing.
Пример:
assing(f,’c:\data.txt’);
reset(f);
Если имя файла указано неверно, то возникает ошибка. Эту ошибку можно обработать программным способом. Например, вот так:
{ Демонстрация использования IOResult при открытии файла }
Подписаться на:
Сообщения (Atom)