КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Анализ самостоятельной работы. Работа над ошибками
О о Решение задач. Цель: закрепление знаний, подготовка к контрольной работе. Ход урока; Проверка домашнего задания с анализом выполненных ими программ. Студенты, успешно справившиеся с домашним заданием, предлагаем перейти к решению задач. Примерные тексты задач. 1. Задана строка, содержащая буквы и числа. Найти произведение всех чисел заданной строки (использовать тип данных long, int для вывода произведения). 2. Составить алгоритм, подсчитывающий количество тех слов в строке из N букв, в которых третьей является заданная буква ь. Слова разделены пробелами. Других знаков препинания нет. 3. Написать программу, которая по введенному коду выдает на экран символ. 4. Написать программу, которая выведет следующую конструкцию из символов: а аб абс абсд … аб...я. Домашнее задание: повторить процедуры работы со строковыми величинами и приемы обработки массивов, просмотреть решение задач на строковые величины и двумерные массивы, подготовиться к контрольной работе. «Строковые величины и двумерные массивы». Цель: проверка знаний студентов, навыков самостоятельного решения задач и умения применять полученные знания на практике. Студентам предлагаем несколько вариантов работы, в каждом из которых две задачи. Вариант 1. 1. Имеется двумерный массив целых положительных чисел. Найти номер строки, для которой среднеарифметическое значение ее элементов максимально. 2. Составить алгоритм, подсчитывающий для заданного текста частоту вхождения всех букв русского алфавита. Вариант 2. 1. Найти номер строки и столбца двумерного массива для максимального элемента этого массива. 2. Написать программу, которая введенное с клавиатуры слово напечатает следующим образом: школа к л л л алокш Вариант 3. 1. Найти сумму элементов двумерного массива вещественных чисел с(15,15), расположенных на главной диагонали. 2. Написать программу, которая перевернет введенное с клавиатуры слово или фразу. Цель: проанализировать наиболее характерные ошибки, развивать навыки самостоятельного анализа проблем и выбора метода их решения. Ход урока: На данном уроке необходимо проанализировать ошибки, допущенные студентами в ходе выполнения самостоятельной работы, разобрать причины, вызвавшие эти ошибки. Провести работу по исправлению допущенных ошибок. В том случае, если с какой-либо из задач не справилось большинство учащихся, ее выполнявших, то целесообразно привести решение этой задачи на доске с подробным анализом решения.' После исправления ошибок предлагаем учащимся проверить работу их программ на компьютере (провести тестирование программ). Примерные варианты решения задач: Вариант 1. 1. program vll; uses crt; var a:array[1..50,1..50] of integer; i,j,n,m,s,k:integer; sr:real; begin clrscr; write('ввeдитe количество строк и столбцов'); readln (m,n); randomize; for i:=l to m do for j:=l to n do a[i,j]:=random(50); clrscr; writeln ('исходный массив'); for i:=l to m do begin forj:=l to ndo write(a[ij]:4); writeln; end; sr:=-5; {так как массив положительных чисел} writeln; for i:=l to mdo \ begin.^' s:=0; ' forj:=l to ndo J s:=s-i-a[i,j]; writeln(s/n:6:2); {распечатка средних арифметических для контроля} ifs/n>sr then begin sr:=s/n; k:=i; end; end; writeln; writeln('иcкoмaя строка-',k); repeat until keypressed; end. 2. program vl 2; uses crt; var fr,bukv,z:string; a:array[l..32] of integer; i,k: integer; {определение номера буквы} procedure por(var znach: integer;x:string;bukv:string); • var i: integer; begin znach:=0 i:=l; while (i<=32) and (znach=0) do if x=copy(bukv,i, 1) then znach:=i else i:=i+l; end; {исполняемая часть} begin clrscr; wгiteln('ввeдитe фразу'); readln(fr); Ьику:='абвгдежзийклмнопрстуфхцчшщъыьэюя'; for i:=l to 32 do a[i]:=0; for i:=l to length(fr) do begin por(k,copy(fr,i,l),bukv); {просмотр фразы и определение вхождения} ifk>Othena[k]-a[k]+l; end; writeln; write ('абвгдежзийклмнопрстуфхцчшщъэюя'); writeln; for i:=l to 32 do write(a[i]:2); repeat until keypressed; end. Вариант2. 1. program v21; uses crt; vara:array[1..50,1..50] of real; i,j,n,m,k,l:integer; max:real; begin: clrscr; write('ввeдитe размер массива m,n'); readln(m,n); randomize; I for i:=l to mdo r forj:-l to n do ' a[ij]:=random(50); ' clrscr; ; writpln ('исходный массив'); 1; for i:=l to m do begin for j:=l ton do write(a[ij]:6:2); writeln; end; max:=a[l,ll; for i:=l to m do forj.-l ton do if max<a[i,j] then begin max:=a[i,j];k:=i;l:=j; end; writeln('мaкcимaльный элемент равен ',max:6:2,'); writeln('oh находится в ', к,'строке ', 1 'столбце'); repeat until keypressed; end. 2. program v22; uses crt; yar fr:string;i,n,k:integer; begin clrscr writeln('ввeдитe слово');; read(fr); gotoxy(4,12); write(fr); for i:=2 to length(fr) do begin gotoxy (4,11 +i); write(copy(fr,i, 1)) gotoxy(4+length(fr)-l,11+i); write(copy(fr,length(fi-)-i+1,1)); end; for i:=2 to length(fr)-l do begin gotoxy(3+i,l l+length(fr)); write(copy(fr,length(fr)-i+l,l)); end; repeat until keypressed; end. Вариант3. 1. program v31; uses crt;, var c:array[1..15,1..15] ofreal; i,j:integer; s:real; begin clrscr; randomize; for i:=l to 15 do forj:=l to 15 do c[i,j]:=random(50); clrscr; writeln ('исходный массив'); for i:=l to 15 do begin forj:=l to 15 do write(c[i,j]:6:2); writeln; end; s:=0; fori:=l to 15 dp s:=s+c[i,i]; ' writeln('Искомая сумма-,s: 10:2); repeat until keypressed; end. 2. programv32 uses crt; var fr:string;i: integer; begin clrscr;. vvrite('BBeflHTe слово или фразу'); readln(fr); writeln; for i:=l to length(fr) do write(copy (fr,length(fr)-i+1,1)); repeat until keypressed; end.
Дата добавления: 2015-06-26; Просмотров: 801; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |