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

Содержание:

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

Здравствуйте! Меня зовут Александр Георгиевич. На протяжении последних 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 баллов на официальном экзамене ЕГЭ по информатике.

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

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

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

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

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

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

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

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

 

 

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

Малышев
Евгений

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

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

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

Ахматова
Юлия

 
В нашем вузе я должна была сдавать экзамену по C#. Билеты были очень сложные. Один вопрос теоретический, практическая задача в консоли и лабораторная, связанная с базами данных. Знания у меня были тусклые в этих...

Фрунзе
Яна

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

Богдан
Игнатьев

 
Теперь я чувствую себя уверенно при программировании графических примитивов. Я еще раз убедился, что хороший учитель очень важен для хорошего обучения. В следующем учебном году у нас будет дисциплина "Мультипликация и...

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

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

Сема
Катерина

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

Потанин
Михаил

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

Иванов
Денис

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

Уфимцев
Сергей

 
Хочется подчеркнуть высокую дисциплину на протяжении всех уроков, понятность объяснения и помощь даже во внеурочное время. Спасибо большое! Буду рекомендовать вас своим знакомым и друзьям))

Прохоров
Дмитрий

 
Спасибо вам). Я сам не ожидал, что мне поставят пятерку, просто попался билет, связанный с обработкой строк и структур, а мы их с вами очень детально изучили и мне было все предельно ясно. С практической задачей на...

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

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

Фролова
Екатерина

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