Другие статьи из рубрики «Информатика»

Содержание:

Гарантированная подготовка школьников к экзамену ОГЭ и ЕГЭ по информатике!

Здравствуйте! Меня зовут Александр Георгиевич. На протяжении последних 12 лет я успешно готовлю школьников к успешной сдаче ОГЭ или ЕГЭ по информатике и ИКТ, а студентам помогаю в реализации различных работ по программированию и натаскиваю их по какому-либо языку программирования.

Вы выбрали одним из итоговых школьных экзаменов ОГЭ или ЕГЭ по информатике? И оказалось, что необходимо уметь программировать хотя бы на одном синтаксически несложном языке и особенно хорошо понимать, как устроены циклические алгоритмические конструкции? Уже пожалели о том, что выбрали информатику для сдачи? Не стоит сдаваться! Записывайтесь ко мне на первый пробный индивидуальный урок по информатике и программированию.

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

Прежде чем позвонить мне на телефон и рассказать о своих информатических проблемах, я рекомендую вам:

Краткий экскурс циклических конструкций в Паскаль. Если выбрал информатику для сдачи, то обязан это знать!

Существует три типа циклических конструкций в Паскале:

  • Цикл со счетчиком (for-to-do).

  • Цикл с предусловием (while-do).

  • Цикл с постусловием (repeat-until).

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

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

Нельзя успешно писать программный код, решить все задачи на официальных экзаменах ОГЭ или ЕГЭ по информатике, получить оценку "отлично" от преподавателя вуза по дисциплине «Программирование», если у вас нет устойчивого понимания принципов работы циклических алгоритмических конструкций.

Влияние входных данных на выбор циклической конструкции в Паскаль

Неискушенный в программировании школьник или студент спросит: «А что необходимо понимать под входными данными?» Это закономерный вопрос, и с ним стоит немедленно разобраться. Под входными данными следует понимать некие величины, которые задаются еще до начала работы программы или определяются динамически в процессе ее работы.

Рассмотрим условие первой конкретной задачи. Пользователь вводит с клавиатуры натуральное число n, не превосходящее 10, и необходимо рассчитать и вывести на экран факториал введенного числа, то есть вывести значение n!

В данной задаче входным данным выступает значение переменной n, которое введет пользователь с клавиатуры.

А теперь попробуйте понять, каким типом циклической алгоритмической конструкции необходимо воспользоваться для оптимального решения поставленной задачи. Чтобы однозначно и правильно ответить на этот вопрос, вы должны построить математическую модель решаемой задачи. Помните о том, что информатика, по своей сути, базируется на математике!

Вспомним из теории математики, что факториал числа – произведение всех натуральных чисел от 1 до этого числа включительно, то есть можно записать следующую формулу:

n! = 1 • 2 • 3 • … • (n – 2) • (n – 1) • n.

Как только сформирована математическая модель, сразу становится очевидным, какой цикл необходимо применить для эффективного решения. Это цикл со счетчиком. Почему? Да потому что нам известны левая и правая граница изменения параметра цикла. Также нам известен шаг изменения счетчика и он равен единице, так как мы последовательно перемножаем все натуральные числа от 1 до n.

Пример кода на языка Паскаль:

{поскольку рассчитывается произведение, то изначально ставим единицу}
f := 1;
{перебираем все числа от 1 до n}
for i := 1 to n do
{рассчитываем факториал}
    f := f * i;

Также цикл со счетчиком идеально вписывается в решение, когда необходимо обработать массив данных. Как правило, это обработка заключается в сканировании всех элементов массива, то есть «пробежке» счетчика от первого элемента до последнего элемента заданного массива. Циклическая конструкция в Паскале for-to-do и массивы данных – друзья навеки!

А сейчас рассмотрим второй конкретный пример. Дан одномерный массив, состоящий из 10 элементов целочисленного типа данных. Значения элементов могут находиться в диапазоне от -20 до +30. Необходимо найти индекс первого отрицательного элемента при «взгляде» слева направо.

Пусть исходный вектор имеет следующий вид:

12

9

23

4

-17

8

0

-5

-1

20

Значение

1

2

3

4

5

6

7

8

9

10

Индекс

Невооруженным глазом видно, что первый слева отрицательный элемент имеет индекс 5 (v[5] = -17). Уместна ли в данном случае циклическая алгоритмическая конструкция for-to-do? Думаю, что нет!

Слава богу, язык программирования Паскаль достаточно богат на подбор циклических структур. И в данном случае рациональнее всего применить так называемый цикл с предусловием, т е циклическую конструкцию в Паскале while-do. Принцип работы данного цикла прост: прежде чем начнут выполняться операторы тела цикла проверяется логическое выражение в заголовке цикла. Если результатом выражения является истина, то управление передается на первый оператор тела цикла, иначе – управление передается на первый оператор, идущий за циклом.

Код на языке Паскаль:

{просмотр начинаем с самого левого элемента, а у него индекс равен 1}
i := 1;
{пока мы не вышли за последний правый элемент и пока текущий элемент неотрицательный}
while((i <= N) and (v[i] >= 0)) do
{переходим к анализу следующего элемента}
    i := i + 1;

В итоге цикл закончится, когда переменная i станет равна 5.

Наиболее гибкой циклической алгоритмической конструкцией является цикл while-do. Почему? Чтобы получить ответ на этот непростой вопрос, а также информацию относительно использования третьего типа циклов (цикла с постусловием repeat-until), вам следует записаться на мои индивидуальные уроки по информатике и программированию. На своих уроках я делаю акцент не только на изучении нового теоретического материала, но и колоссальное количество времени посвящаю и решению всевозможных практических заданий.

По теме, связанной с использованием циклических алгоритмических конструкций, я также подготовил специально для вас мультимедийный видеоролик, который рассматривает типовую задачу в рамках подготовки к ЕГЭ по информатике и ИКТ. Смотрите, изучайте и если останутся вопросы, то не откладывая набирайте мой номер телефона – я обещаю дать полноценную консультацию.

Остались вопросы? Звоните мне на телефон и записывайтесь на индивидуальные занятия

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

Рассматриваемая в статье тема обязательна для получения навыков программирования и знакомства с базовыми конструкциями языка, без которых не получить более 60 баллов на официальном экзамене ЕГЭ по информатике.

Берите сотовый телефон в руку и набирайте мой контактный номер прямо сейчас. График расписания моих частных уроков не резиновый, желающих позаниматься со мной предостаточно, некоторые ждут своей очереди около месяца, только бы попасть на мои репетиторские уроки и получить квалифицированную помощь от ведущего эксперта подготовки к ОГЭ и ЕГЭ по информатике и ИКТ.

РЕПЕТИТОР
ПО ИНФОРМАТИКЕ
И ПРОГРАММИРОВАНИЮ

ЧИТАТЬ
ОТЗЫВЫ МОИХ
УЧЕНИКОВ

Смотреть отзывы

АДРЕС
ЭЛЕКТРОННОЙ ПОЧТЫ
РЕПЕТИТОРА

Написать письмо

ЗАКАЗАТЬ
РАБОТУ ПО
ПРОГРАММИРОВАНИЮ

Работа на заказ

 

 

Отзывы
моих учеников

Юзов
Артур

 
Я благодарен Александру Георгиевичу за его работу со мной. Теперь чувствую себя уверенно при программирование на языке Паскаль. Если у меня в процессе последующего обучения возникнут какие-то проблемы, я обязательно...

Сухоруков
Андрей

 
Я не ожидал, что Александр Георгиевич владеет знаниями, далеко выходящими за пределы любой вузовской программы. Вы очень сильный преподаватель и программист-практик. Я очень многому у него научился, почувствовал...

Каховская
Оксана

 
Хочу всем сказать, что я по своему духу лингвист. Паскаль - это формальный язык написания текстов. Благодаря репетитору я уверенно себя стала чувствовать при написании программ. Мне досконально понятны все базовые...

Самуйлов
Кирилл

 
Спасибо вам большое за подготовку, было очень интересно и познавательно. На самом деле я осознаю свою ошибку - нужно было к вам обратиться хотя бы за 3 месяца и тогда бы мы все фундаментально успели рассмотреть и...

Иванов
Денис

 
Очень много нового узнал о ДС, Александр Георгиевич показал несколько способов построения бинарного дерева, а также реализацию функций повышенного уровня сложности. Когда шел на экзамен, то абсолютно не волновался, так...

Миронов
Сергей

 
Очень рад, что поступил в заветный ВУЗ, так как считаю, что именно в этом ВУЗе можно научиться отлично программировать, а репетитор помог мне очень сильно. Было интересно заниматься и сложно. Особенно я целыми часами...

Фрунзе
Яна

 
На самом деле я очень счастлива, что получила четыре на экзамене. Я так боялась того, что меня отчислят из-за этого предмета, но мои страхи были напрасными. Благодаря профессионализму Александра Георгиевича, его...

Коряков
Михаил

 
Когда я начал заниматься с Александром Георгиевичем, у меня уже была довольно сильная база, но мы ее упрочили невероятно сильно дополнительными методиками. Я научился решать наиболее оптимально огромное количество задач...

Станислав
Блок

 
Спасибо вам за подготовку. Было очень интересно и познавательно. Программированием заниматься в жизни не буду, т к чувствую, что нужно еще очень многое изучать. Спасибо вам еще раз.

Даниил
Сафонов

 
Чтобы программировать, нужно быть усидчивым и очень умным человеком. Я больше гуманитарий, поэтому мне вся эта техническая мысль дается крайне сложно. Но мне понравилось работать с Александром Георгиевичем. Видно, что...

Булычев
Владимир

 
С учителем мы сошлись характерами и я стал заниматься регулярно и продолжительное время. Очень много давалось домашних заданий, что я даже не успевал все выполнять, так как был занят еще в ВУЗе. Выражаю огромную...

Евдокимов
Максим

 
Не думал, что смогу получить 91 балл на ЕГЭ, но у меня получилось, благодаря методикам моего репетитора. Очень понятно объясняет, особенно нюансы, в которых я всегда путался и ленился разбираться.

Дмитров
Анатолий

 
Результат превзошел все мои ожидания! Изначально я планировал набрать в районе 80 баллов, но вы смогли меня натаскать на предельно высокий балл. В обязательном порядке я продолжу с вами обучение в процессе подготовки к...
Смотреть все отзывы
 
 
 
 
 
 
Авторизация на сайте
 
 
 
Обнаружили
ошибку на сайте?
Занятия по информатике