Инфоурок Информатика ПрезентацииРешение С1 по информатике - поиск ошибок в программе со сложным условием

Решение С1 по информатике - поиск ошибок в программе со сложным условием

Скачать материал

Выберите документ из архива для просмотра:

Выбранный для просмотра документ inf_ege_c1.pptx

Скачать материал "Решение С1 по информатике - поиск ошибок в программе со сложным условием"

Получите профессию

Технолог-калькулятор общественного питания

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Методические разработки к Вашему уроку:

Получите новую специальность за 2 месяца

Специалист по экологии

Описание презентации по отдельным слайдам:

  • Вернуться

    1 слайд

    Вернуться

  • в программе осуществлен ввод лишних данных; ошибка в операторе условия (> вм...

    2 слайд

    в программе осуществлен ввод лишних данных; ошибка в операторе условия (> вместо <, + вместо -) или в условии выхода из области; несоответствие количества «скобок» в условии (while и if, ошибка до или после else); возможно строки в программе поменяны местами (или строка удалена) ВОЗМОЖНЫЕ ВАРИАНТЫ ОШИБОК:

  • входные данные – числовые выражения и задание содержит три вопроса: определит...

    3 слайд

    входные данные – числовые выражения и задание содержит три вопроса: определить при каких входных данных программа работает неверно (вопрос для всех классов заданий С1); определить лишнюю часть представленной программы; исправить предложенную программу. входные данные – числовые выражения, но вопросов два (т.е. в исходной части программы две ошибки); входные данные – числовые, вопросов два, оба касаются исправления программы, но второй вопрос сформулирован довольно жёстко (требует не содержать логических функций и т.д.) входные данные – строковые переменные, а в остальном соответствует первому классу заданий С1. Классификация заданий С1

  • Задача№1. Тре­бо­ва­лось на­пи­сать про­грам­му, при вы­пол­не­нии ко­то­рой...

    4 слайд

    Задача№1. Тре­бо­ва­лось на­пи­сать про­грам­му, при вы­пол­не­нии ко­то­рой с кла­ви­а­ту­ры счи­ты­ва­ют­ся ко­ор­ди­на­ты точки на плос­ко­сти (x, y — дей­стви­тель­ные числа) и опре­де­ля­ет­ся при­над­леж­ность этой точки за­дан­ной за­штри­хо­ван­ной об­ла­сти (вклю­чая гра­ни­цы). Про­грам­мист то­ро­пил­ся и на­пи­сал про­грам­му не­пра­виль­но. ПРО­ГРАМ­МАНА ПАС­КА­ЛЕ ПРО­ГРАМ­МА НА БЕЙ­СИ­КЕ ПРО­ГРАМ­МА НА СИ var x,y: real;begin readln(x,y); if y<=x then if y<=─x then if y>=x*x─2 then write('при­над­ле­жит') else write('не при­над­ле­жит') end. INPUT x, yIF y<=x THEN IF y<=-x THEN IF y>=x*x-2 THEN PRINT "при­над­ле­жит" ELSE PRINT "не при­над­ле­жит" ENDIF ENDIF ENDIF END void main(void){float x,y; scanf("%f %f",&x,&y); if (y<=x) if (y<=-x) if (y>=x*x-2) printf("при­над­ле­жит"); else printf("не при­над­ле­жит"); } ПРО­ГРАМ­МАНА ПАС­КА­ЛЕ var x,y: real;begin readln(x,y); if y<=x then if y<=─x then if y>=x*x─2 then write('при­над­ле­жит') else write('не при­над­ле­жит') end.

  • Пе­ре­ри­суй­те и за­пол­ни­те таб­ли­цу, ко­то­рая по­ка­зы­ва­ет, как ра­б...

    5 слайд

    Пе­ре­ри­суй­те и за­пол­ни­те таб­ли­цу, ко­то­рая по­ка­зы­ва­ет, как ра­бо­та­ет про­грам­ма при ар­гу­мен­тах, при­над­ле­жа­щих раз­лич­ным об­ла­стям (A, B, C, D, E, F, G и H). Точки, ле­жа­щие на гра­ни­цах об­ла­стей, от­дель­но не рас­смат­ри­вать. В столб­цах усло­вий ука­жи­те "да", если усло­вие вы­пол­нит­ся, "нет", если усло­вие не вы­пол­нит­ся, "—" (про­черк), если усло­вие не будет про­ве­рять­ся, "не изв.", если про­грам­ма ведет себя по-раз­но­му для раз­ных зна­че­ний, при­над­ле­жа­щих дан­ной об­ла­сти. В столб­це "Про­грам­ма вы­ве­дет" ука­жи­те, что про­грам­ма вы­ве­дет на экран. Если про­грам­ма ни­че­го не вы­во­дит, на­пи­ши­те "—" (про­черк). Если для раз­ных зна­че­ний, при­над­ле­жа­щих об­ла­сти, будут вы­ве­де­ны раз­ные тек­сты, на­пи­ши­те "не изв". В по­след­нем столб­це ука­жи­те "да" или "нет". Ука­жи­те, как нужно до­ра­бо­тать про­грам­му, чтобы не было слу­ча­ев ее не­пра­виль­ной ра­бо­ты. (Это можно сде­лать не­сколь­ки­ми спо­со­ба­ми, до­ста­точ­но ука­зать любой спо­соб до­ра­бот­ки ис­ход­ной про­грам­мы.) По­сле­до­ва­тель­но вы­пол­ни­те сле­ду­ю­щее:

  • Эле­мен­ты от­ве­та: Показать график Об­ласть Усло­вие 1 (y

    6 слайд

    Эле­мен­ты от­ве­та: Показать график Об­ласть Усло­вие 1 (y<=x) Усло­вие 2 (y<=-x) Усло­вие 3 (y>=x*x-2) Про­грам­ма вы­ве­дет Об­ласть об­ра­ба­ты­ва­ет­сяверно A нет — — — нет В нет — — — нет С нет — — — нет D да да да при­над­ле­жит да Е да нет — — нет F да нет — — нет G да да нет не при­над­ле­жит да

  • Воз­мож­ная до­ра­бот­ка (Пас­каль, раз­би­е­ние об­ла­сти на две части пря­м...

    7 слайд

    Воз­мож­ная до­ра­бот­ка (Пас­каль, раз­би­е­ние об­ла­сти на две части пря­мой x = 0): if ((y>=x*x─2) and (y<=x) and (x>=0)) or ((x<=0) and (y<=-x)) then write('при­над­ле­жит') else write('не при­над­ле­жит') Ва­ри­ан­тов до­ра­бот­ки может быть до­ста­точ­но много, но обыч­но пра­виль­ное опи­са­ние за­штри­хо­ван­ных об­ла­стей в них пред­став­ля­ет собой или объ­еди­не­ние двух (или более) воз­мож­но пе­ре­се­ка­ю­щих­ся об­ла­стей, или ис­клю­че­ние одной об­ла­сти из дру­гой.  При раз­де­ле­нии об­ла­сти вдоль какой-либо линии точки, ко­то­рые лежат на этой линии внут­ри об­ла­сти, могут быть при­чис­ле­ны к одной части, к дру­гой или к обеим (то есть, на­при­мер, в при­ве­ден­ном ре­ше­нии на языке Пас­каль одно из усло­вий (x >= 0) или (x <= 0) может быть стро­гим).

  • Задача №2. Тре­бо­ва­лось на­пи­сать про­грам­му, ко­то­рая ре­ша­ет урав­не­...

    8 слайд

    Задача №2. Тре­бо­ва­лось на­пи­сать про­грам­му, ко­то­рая ре­ша­ет урав­не­ние «a |x| = 6» от­но­си­тель­но х для любых чисел а и b, вве­ден­ных с кла­ви­а­ту­ры. Все числа счи­та­ют­ся дей­стви­тель­ны­ми. Про­грам­мист то­ро­пил­ся и на­пи­сал про­грам­му не­пра­виль­но. По­сле­до­ва­тель­но вы­пол­ни­те три за­да­ния: При­ве­ди­те при­мер таких чисел a, b, x, при ко­то­рых про­грам­ма не­вер­но ре­ша­ет по­став­лен­ную за­да­чу. Ука­жи­те, какая часть про­грам­мы яв­ля­ет­ся лиш­ней. Ука­жи­те, как нужно до­ра­бо­тать про­грам­му, чтобы не было слу­ча­ев ее не­пра­виль­ной ра­бо­ты. (Это можно сде­лать не­сколь­ки­ми спо­со­ба­ми, по­это­му можно ука­зать любой спо­соб до­ра­бот­ки ис­ход­ной про­грам­мы). ПРО­ГРАМ­МА НА ПАС­КА­ЛЕ vara,b,x:real;begin readln(a,b,x); if a = 0 then if b = 0 then write ('любоечисло') else write ('нетре­ше­ний') else if b = 0 then write('x = 0') else write('x =',b/a,'илиx =',-b/a); end.

  • По­яс­не­ние a = 1, b = −1, x = 0. Зна­че­ние x может быть не ука­за­но. Зна­...

    9 слайд

    По­яс­не­ние a = 1, b = −1, x = 0. Зна­че­ние x может быть не ука­за­но. Зна­че­ния а и b могут быть лю­бы­ми не­ну­ле­вы­ми чис­ла­ми с раз­ны­ми зна­ка­ми. Ошиб­ка про­грам­ми­ста со­сто­ит в том, что про­грам­ма ра­бо­та­ет не­пра­виль­но при любых не­ну­ле­вых а и Ь, име­ю­щих раз­ные знаки.   Лиш­няя часть: не нужно вво­дить х с кла­ви­а­ту­ры; верно: readln(a, Ь).   Воз­мож­ная до­ра­бот­ка: readln(а, b); if а = 0 then if b = 0 then write('любое число') else write('нет ре­ше­ний') else if b/а > 0 then write('х =', Ь/а, ' или х =', -Ь/а) else if b = 0 then write('х =0') else write('нет ре­ше­ний');

  • Задача№3 Тре­бо­ва­лось на­пи­сать про­грам­му, при вы­пол­не­нии ко­то­рой с...

    10 слайд

    Задача№3 Тре­бо­ва­лось на­пи­сать про­грам­му, при вы­пол­не­нии ко­то­рой с кла­ви­а­ту­ры счи­ты­ва­ют­ся ко­ор­ди­на­ты точки на плос­ко­сти (x, y — дей­стви­тель­ные числа) и опре­де­ля­ет­ся при­над­леж­ность этой точки за­дан­ной за­кра­шен­ной об­ла­сти (вклю­чая гра­ни­цы). Уче­ник на­пи­сал такую про­грам­му: ПАС­КАЛЬ var x, y: real; beginreadln(x,у); ifу >= 1-хthen begin ifу <= 2-2*x*x then write(1при­над­ле­жит') end else ifу >=x*x-5 then write('при­над­ле­жит') else write('не при­над­ле­жит') end.

  • При про­вер­ке ра­бо­ты про­грам­ма вы­пол­ня­лась по шагам для не­ко­то­рых...

    11 слайд

    При про­вер­ке ра­бо­ты про­грам­ма вы­пол­ня­лась по шагам для не­ко­то­рых кон­троль­ных зна­че­ний х и у, при этом был за­пол­нен про­то­кол те­сти­ро­ва­ния. В ре­зуль­та­те не­ак­ку­рат­но­го об­ра­ще­ния про­то­кол был ис­пор­чен, ча­стич­но со­хра­ни­лись толь­ко че­ты­ре стро­ки: По­сле­до­ва­тель­но вы­пол­ни­те сле­ду­ю­щее. Вос­ста­но­ви­те уце­лев­шие стро­ки про­то­ко­ла, за­пол­нив все клет­ки таб­ли­цы. Там, где со­дер­жа­ние вос­ста­нав­ли­ва­ет­ся не­од­но­знач­но, за­пи­ши­те любое воз­мож­ное зна­че­ние. На­при­мер, если для не­сколь­ких об­ла­стей по­лу­ча­ет­ся оди­на­ко­вая стро­ка таб­ли­цы, ука­жи­те в графе «Об­ласть» любую из этих об­ла­стей. 2. Ука­жи­те, как нужно до­ра­бо­тать про­грам­му, чтобы не было слу­ча­ев её не­пра­виль­ной ра­бо­ты. Об­ласть Усло­вие1 (у >=x+1) Усло­вие 2 (y <=2−2*x*x) Усло­вие 3 (y >= x*x−5) Вывод Верно — принадлежит нет не принадлежит да — да

  • По­яс­не­ние 2. Для на­пи­са­ния пра­виль­ной про­грам­мы не­об­хо­ди­мо раз­...

    12 слайд

    По­яс­не­ние 2. Для на­пи­са­ния пра­виль­ной про­грам­мы не­об­хо­ди­мо раз­де­лить тре­бу­е­мую об­ласть на части и опи­сать каж­дую из них. На­при­мер, можно вы­де­лить об­ла­сти FGLM, HN и QR. При этом по­лу­ча­ет­ся такой фраг­мент про­грам­мы (при­мер на Пас­ка­ле):   if (y<=1-x) and (y>=x*x-5) and (x*y<=0) or (y<=2-2*x*x) and (y>=0) then write('при­над­ле­жит') else write('не при­над­ле­жит') 1. График Об­ласть Усло­вие1 (у >=x+1) Усло­вие 2 (y <=2−2*x*x) Усло­вие 3 (y >= x*x−5) Вывод Верно BCDNP да нет — — нет KDL нет — да при­над­ле­жит нет AHQR нет — нет не принадлежит да G да да — при­над­ле­жит да

  • Задача№4 Тре­бо­ва­лось на­пи­сать про­грам­му, при вы­пол­не­нии ко­то­рой с...

    13 слайд

    Задача№4 Тре­бо­ва­лось на­пи­сать про­грам­му, при вы­пол­не­нии ко­то­рой с кла­ви­а­ту­ры счи­ты­ва­ет­ся на­ту­раль­ное число N, не пре­вос­хо­дя­щее 109, и вы­во­дит­ся ко­ли­че­ство цифр этого числа. Про­грам­мист то­ро­пил­ся и на­пи­сал про­грам­му не­пра­виль­но. По­сле­до­ва­тель­но вы­пол­ни­те сле­ду­ю­щее.   1. На­пи­ши­те, что вы­ве­дет эта про­грам­ма при вводе числа 584.   3. Ука­жи­те одно число для ко­то­ро­го эта про­грам­ма будет ра­бо­тать верно.   2. Най­ди­те все ошиб­ки в этой про­грам­ме (их может быть одна или не­сколь­ко). Ука­жи­те все стро­ки (одну или более), со­дер­жа­щие ошиб­ки, и для каж­дой такой стро­ки при­ве­ди­те пра­виль­ный ва­ри­ант. Об­ра­ти­те вни­ма­ние, что тре­бу­ет­ся найти ошиб­ки в име­ю­щей­ся про­грам­ме, а не на­пи­сать свою, воз­мож­но, ис­поль­зу­ю­щую дру­гой ал­го­ритм ре­ше­ния. Ис­прав­ле­ние ошиб­ки долж­но за­тра­ги­вать толь­ко стро­ку, в ко­то­рой на­хо­дит­ся ошиб­ка.

  • Про­грам­ма вы­ве­дет число 2. Про­грам­ма ра­бо­та­ет верно для всех чисел,...

    14 слайд

    Про­грам­ма вы­ве­дет число 2. Про­грам­ма ра­бо­та­ет верно для всех чисел, на­чи­на­ю­щих­ся на 9. в том числе для числа 9. [До­ста­точ­но ука­зать любое такое число.] В ка­че­стве от­ве­та для осталь­ных чисел про­грам­ма выдаёт число на 1 мень­шее, чем нужно. Воз­мож­ные (не все) ва­ри­ан­ты ис­прав­ле­ния для языка Пас­каль: 1) ис­прав­ле­ние усло­вия про­дол­же­ния цикла на while (N >= 1) do или while (N > 0) do. При этом за­ме­на на while (N >= 0) do кор­рект­ной не яв­ля­ет­ся. 2) ис­прав­ле­ние ини­ци­а­ли­за­ции на sum := 1, а усло­вие про­дол­же­ния цикла на while (N > 9) do или while (N >= 10) do. По­яс­не­ние

  • 15 слайд

  • 16 слайд

Получите профессию

Менеджер по туризму

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Получите профессию

Методист-разработчик онлайн-курсов

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Краткое описание документа:

В данной презентации рассмотрены варианты решений задач типа С1 по информатике. Показана их условная класификация. Приведены воможные ошибки при поиске ответа. Тезисы Часть С состоит из четырех заданий. Для выполнения заданий этой части необходимо написать развернутый ответ в произвольной форме. Задание С1 относится к повышенному уровню сложности. Задания этого типа проверяют знание программирования с использованием условного оператора и различных его разновидностей, они требуют от учащихся внимания («найти лишнюю часть», «добавить недостающую часть»), простейших знаний языков программирования и логических функций.

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 664 139 материалов в базе

Скачать материал

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 08.05.2014 2932
    • ZIP 274.8 кбайт
    • Оцените материал:
  • Настоящий материал опубликован пользователем Мухаметгалиев Равиль Рафаильевич. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    • На сайте: 11 лет
    • Подписчики: 0
    • Всего просмотров: 3050
    • Всего материалов: 1

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

Бухгалтер

Бухгалтер

500/1000 ч.

Подать заявку О курсе
  • Сейчас обучается 24 человека из 17 регионов

Курс профессиональной переподготовки

Математика и информатика: теория и методика преподавания в образовательной организации

Учитель математики и информатики

500/1000 ч.

от 8900 руб. от 4150 руб.
Подать заявку О курсе
  • Сейчас обучается 685 человек из 79 регионов
  • Этот курс уже прошли 1 809 человек

Курс профессиональной переподготовки

Информатика: теория и методика преподавания с применением дистанционных технологий

Учитель информатики

300 ч. — 1200 ч.

от 7900 руб. от 3650 руб.
Подать заявку О курсе
  • Этот курс уже прошли 18 человек

Курс профессиональной переподготовки

Создание и обеспечение электронного архива с использованием информационно-коммуникационных технологий

Специалист по формированию электронного архива

600 ч.

9840 руб. 5600 руб.
Подать заявку О курсе
  • Сейчас обучается 30 человек из 22 регионов
  • Этот курс уже прошли 36 человек

Мини-курс

Индустриальный туризм

4 ч.

780 руб. 390 руб.
Подать заявку О курсе

Мини-курс

Инновационные технологии для бизнеса

4 ч.

780 руб. 390 руб.
Подать заявку О курсе

Мини-курс

Психология аддиктивного поведения

4 ч.

780 руб. 390 руб.
Подать заявку О курсе
  • Сейчас обучается 51 человек из 25 регионов
  • Этот курс уже прошли 32 человека