ЕГЭ 2012 Информатика и ИКТ Консультация 3. Пример.

Презентация:



Advertisements
Похожие презентации
ЕГЭ 2011 Информатика и ИКТ Консультация 3 18 марта.
Advertisements

ЕГЭ информатика Алгоритмизация и программирование Консультация 3.
ЕГЭ 2012 Информатика и ИКТ Консультация 4ЕГЭ 2012 Информатика и ИКТ Консультация 4.
ЕГЭ информатика Алгоритмизация и программирование Консультация 4.
Сайт для подготовки к ЕГЭ: kpolyakov.narod.ru Презентация будет выложена на сайте elschool11.ru ученикам – информатика –Подготовка к ЕГЭ (внизу странички)
ЕДИННЫЙ ГОСУДАРСТВЕННЫЙ ЭКЗАМЕН Часть С демо-варианта 2009.
Умение прочесть фрагмент программы на языке программирования и исправить допущенные ошибки С1, время – 30 мин, П, 3 балла.
З АДАНИЕ С1 ( ЗАПОЛНЕНИЕ ТАБЛИЦЫ, ДОРАБОТКА ПРОГРАММЫ ) ЕГЭ 11 класс.
ПОДГОТОВКА К СДАЧЕ ЕДИНОГО ГОСУДАРСТВЕННОГО ЭКЗАМЕНА Часть С Автор-составитель - Демержеева Т.В.
Задачи на пересечение областей (C1): «на стыке алгебры и логики» Д.Ю. Усенков, О.Б. Богомолова.
Анализ вычислительных алгоритмов в задачах части А и В Задачи повышенной сложности Рахманова М.Н. учитель информатики МАОУ «Физико-технический лицей 1»
ГОТОВИМСЯ К ЕГЭ по информатике /алгоритмизация и программирование/
Учитель информатики МБОУ СОШ 39 Краснодарского края Красноармейского района Очекурова Е. А. Поиск ошибок в программе. Решение заданий типа С 1.
Массивы 9 класс. Основные теоретические сведения Примеры решения задач.
Разбор задач ЕГЭ 2013 (А3, В8 и С1) Лисин Алексей Анатольевич, учитель информатики и ИКТ, МБОУ «Лицей 124»
Апрель - май 2011 г. Выполнил : Шамов Сергей Ученик 11 б класса МОУ ФСОШ 2 « с углубленным изучение отдельных предметов » Апрель - май 2011 г. Задания.
Тематический блок «Программирование» ЕГЭ-2015 Задания 19, 20, 21, 25.
Решение С 1 Золотарева Е.В.. Требовалось написать программу, которая вводит с клавиатуры натуральное число N, не превышающее 10 9, и выводит сумму чётных.
Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от 0 до 100 – баллы учащихся выпускного класса за итоговый тест.
Консультация 2 Информатика и ИКТ ЕГЭ В15 Решение систем логических уравнений Сколько различных решений имеет система логических уравнений X1 X2.
Транксрипт:

ЕГЭ 2012 Информатика и ИКТ Консультация 3

Пример.

Сколько клеток лабиринта соответствуют требованию, что, начав движение в ней и выполнив предложенную программу, РОБОТ уцелеет и остановится в закрашенной клетке (клетка F6)? НАЧАЛО ПОКА ПОКА вниз КОНЕЦ ПОКА ПОКА вправо КОНЕЦ ПОКА КОНЕЦ ПОКА КОНЕЦ

НАЧАЛО ПОКА ПОКА вниз КОНЕЦ ПОКА ПОКА вправо КОНЕЦ ПОКА КОНЕЦ ПОКА КОНЕЦ

НАЧАЛО ПОКА ПОКА вниз КОНЕЦ ПОКА ПОКА вправо КОНЕЦ ПОКА КОНЕЦ ПОКА КОНЕЦ

НАЧАЛО ПОКА ПОКА вниз КОНЕЦ ПОКА ПОКА вправо КОНЕЦ ПОКА КОНЕЦ ПОКА КОНЕЦ

НАЧАЛО ПОКА ПОКА вниз КОНЕЦ ПОКА ПОКА вправо КОНЕЦ ПОКА КОНЕЦ ПОКА КОНЕЦ

НАЧАЛО ПОКА ПОКА вниз КОНЕЦ ПОКА ПОКА вправо КОНЕЦ ПОКА КОНЕЦ ПОКА КОНЕЦ

НАЧАЛО ПОКА ПОКА вниз КОНЕЦ ПОКА ПОКА вправо КОНЕЦ ПОКА КОНЕЦ ПОКА КОНЕЦ Ответ 26

Пример 1. Значения двух массивов a[1..100] и b[1..100] задаются с помощью следующего фрагмента программы. Какой элемент массива B будет наименьшим (указать его номер)? Бейсик FOR t=1 TO 100 A(t)=(t-80)*(t-80) NEXT t FOR t=1 TO 100 B(101-t)=A(t) NEXT t Паскаль for t:=1 to 100 do a[t]:=(t-80)*(t-80); for t:=1 to 100 do b[101- t]:=a[t] Си for(t=1;t

Бейсик FOR t=1 TO 100 A(t)=(t-10) NEXT t Паскаль for t:=1 to 100 do a[t]:=(t-10); Си for(t=1;t

A(1)A(2)A(3)A(9)A(10)A(11)A(100) Бейсик FOR t=1 TO 100 A(t)=(t-10) NEXT t FOR t=1 TO 100 B(t)=A(t)*t NEXT t Паскаль for t:=1 to 100 do a[t]:=(t-10); for t:=1 to 100 do b[t]:=a[t]*t; Си for(t=1;t

Пример 2. Найти сумму элементов двумерного массива при n=30.

Количество элементов = 3030 Диагональ = 30 элементов Количество элементов ниже диагонали = ( )/2 Сумма = ( )/2 = 435 Ответ: 435

Пример В программе описан одномерный целочисленный массив с индексами от 0 до n. Ниже представлен записанный на разных языках программирования фрагмент одной и той же программы, обрабатывающей данный массив: s = 0 z = A(n) FOR i = 0 TO n-1 IF A(i) < z THEN s = s + A(i) NEXT i s:=0; z:=A[n]; for i:=0 to n-1 do if A[i]

Пример В программе описан одномерный целочисленный массив с индексами от 0 до n. Ниже представлен записанный на разных языках программирования фрагмент одной и той же программы, обрабатывающей данный массив: s = 0 z = A(n) FOR i = 0 TO n-1 IF A(i) < z THEN s = s + A(i) NEXT i s:=0; z:=A[n]; for i:=0 to n-1 do if A[i]

Пример. Определите, что будет напечатано в результате выполнения программы БейсикПаскальСи DIM N, S AS INTEGER N = 0 S = 512 WHILE S >= 0 S = S - 20 N = N + 1 WEND PRINTN var n, s: integer; begin n := 0; s := 512; while s >= 0 do begin s := s - 20; n := n + 1 end; write(n) end. #include void main() { int n, s; n = 0; s = 512; while (s >= 0) { s = s - 20; n = n + 1; } printf("%d", n); }

БейсикПаскальСи DIM N, S AS INTEGER N = 0 S = 512 WHILE S >= 0 S = S - 20 N = N + 1 WEND PRINTN var n, s: integer; begin n := 0; s := 512; while s >= 0 do begin s := s - 20; n := n + 1 end; write(n) end. #include void main() { int n, s; n = 0; s = 512; while (s >= 0) { s = s - 20; n = n + 1; } printf("%d", n);} sn >= = *2 >=

БейсикПаскальСи DIM N, S AS INTEGER N = 0 S = 512 WHILE S >= 0 S = S - 20 N = N + 1 WEND PRINTN var n, s: integer; begin n := 0; s := 512; while s >= 0 do begin s := s - 20; n := n + 1 end; write(n) end. #include void main() { int n, s; n = 0; s = 512; while (s >= 0) { s = s - 20; n = n + 1; } printf("%d", n);} sn >= =512-20*2 >= *2-20 = *3 >=

БейсикПаскальСи DIM N, S AS INTEGER N = 0 S = 512 WHILE S >= 0 S = S - 20 N = N + 1 WEND PRINTN var n, s: integer; begin n := 0; s := 512; while s >= 0 do begin s := s - 20; n := n + 1 end; write(n) end. #include void main() { int n, s; n = 0; s = 512; while (s >= 0) { s = s - 20; n = n + 1; } printf("%d", n);} sn >= =512-20*2 >= *2-20 = *3 >= *25 = 12 >=

БейсикПаскальСи DIM N, S AS INTEGER N = 0 S = 512 WHILE S >= 0 S = S - 20 N = N + 1 WEND PRINTN var n, s: integer; begin n := 0; s := 512; while s >= 0 do begin s := s - 20; n := n + 1 end; write(n) end. #include void main() { int n, s; n = 0; s = 512; while (s >= 0) { s = s - 20; n = n + 1; } printf("%d", n);} sn >= =512-20*2 >= *2-20 = *3 >= *25 = 12 >=0 12 – 20

Пример. Определите, что будет напечатано в результате выполнения программы, записанной ниже на разных языках программирования: БейсикПаскальСи DIM N, S AS INTEGER N = 1 S = 0 WHILE N

Пример. Определите, что будет напечатано в результате выполнения программы, записанной ниже на разных языках программирования: БейсикПаскальСи DIM N, S AS INTEGER N = 1 S = 0 WHILE N

БейсикПаскальСи DIM N, S AS INTEGER N = 1 S = 0 WHILE N

Пример. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 8. БейсикПаскальСИ DIM X, A, B AS INTEGER INPUT X A=0: B=0 WHILE X > 0 A = A+1 B = B +(X MOD 10) X = X \ 10 WEND PRINT A PRINT B var x, a, b: integer; begin readln(x); a:=0; b:=0; while x>0 do begin a:=a+1; b:=b+(x mod 10); x:=x div 10; end; writeln(a); write(b); end. #include void main() { int x, a, b; scanf("%d", &x); a=0; b=0; while (x>0) { a=a+1; b=b + (x%10); x= x/10; } printf("%d\n%d", a, b);} x = 5423 остаток от деления x на 10 = 3 x div 10 = 542 x = 542 остаток от деления x на 10 = 2 x div 10 = 54 x = 54 остаток от деления x на 10 = 4 x div 10 = 5 x = 5 остаток от деления x на 10 = 5 x div 10 = 0 x = 0

Пример. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 8. БейсикПаскальСИ DIM X, A, B AS INTEGER INPUT X A=0: B=0 WHILE X > 0 A = A+1 B = B +(X MOD 10) X = X \ 10 WEND PRINT A PRINT B var x, a, b: integer; begin readln(x); a:=0; b:=0; while x>0 do begin a:=a+1; b:=b+(x mod 10); x:=x div 10; end; writeln(a); write(b); end. #include void main() { int x, a, b; scanf("%d", &x); a=0; b=0; while (x>0) { a=a+1; b=b + (x%10); x= x/10; } printf("%d\n%d", a, b);} a =2, следовательно операторы в цикле выполнились 2 раза Выход из цикла при x=0, 10

БейсикПаскальСи DIM X, A, B AS INTEGER INPUT X A=0: B=1 WHILE X > 0 A = A+1 B = B*(X MOD 10) X = X \ 10 WEND PRINT A PRINT B var x, a, b: integer; begin readln(x); a:=0; b:=1; while x>0 do begin a:=a+1; b:=b*(x mod 10); x:= x div 10; end; writeln(a); write(b); end. #include void main() { int x, a, b; scanf("%d", &x); a=0; b=1; while (x>0){ a=a+1; b=b*(x%10); x= x/10; } printf("%d\n%d", a, b);} Пример. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 5.

БейсикПаскальСи DIM X, A, B AS INTEGER INPUT X A=0: B=1 WHILE X > 0 A = A+1 B = B*(X MOD 10) X = X \ 10 WEND PRINT A PRINT B var x, a, b: integer; begin readln(x); a:=0; b:=1; while x>0 do begin a:=a+1; b:=b*(x mod 10); x:= x div 10; end; writeln(a); write(b); end. #include void main() { int x, a, b; scanf("%d", &x); a=0; b=1; while (x>0){ a=a+1; b=b*(x%10); x= x/10; } printf("%d\n%d", a, b);} Пример. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 5. a =3, следовательно операторы в цикле выполнились 3 раза 100

Пример. Определите, какое число будет напечатано в результате выполнения следующего алгоритма (для Вашего удобства алгоритм представлен на четырех языках): БейсикПаскальСи DIM A, B, T, M, R AS INTEGER A = -20: B = 20 M = A: R = F(A) FOR T = A TO B IF F(T) < R THEN M = T R = F(T) END IF NEXT T PRINT M FUNCTION F(x) F = (x-19)*(x+17); END FUNCTION var a,b,t,M,R :integer; Function F(x: integer):integer; begin F := (x-19)*(x+17); end; BEGIN a := -20; b := 20; M := a; R := F(a); for t := a to b do begin if (F(t)

Пример. Определите, какое число будет напечатано в результате выполнения следующего алгоритма (для Вашего удобства алгоритм представлен на четырех языках): БейсикПаскальСи DIM A, B, T, M, R AS INTEGER A = -20: B = 20 M = A: R = F(A) FOR T = A TO B IF F(T) < R THEN M = T R = F(T) END IF NEXT T PRINT M FUNCTION F(x) F = (x-19)*(x+17); END FUNCTION var a,b,t,M,R :integer; Function F(x: integer):integer; begin F := (x-19)*(x+17); end; BEGIN a := -20; b := 20; M := a; R := F(a); for t := a to b do if (F(t)

Пример. Определите, какое число будет напечатано в результате выполнения следующего алгоритма (для Вашего удобства алгоритм представлен на четырех языках): БейсикПаскальСи DIM A, B, T, M, R AS INTEGER A = -20: B = 20 M = A: R = F(A) FOR T = A TO B IF F(T) < R THEN M = T R = F(T) END IF NEXT T PRINT M FUNCTION F(x) F = (x-19)*(x+17); END FUNCTION var a,b,t,M,R :integer; Function F(x: integer):integer; begin F := (x-19)*(x+17); end; BEGIN a := -20; b := 20; M := a; R := F(a); for t := a to b do if (F(t)

Задание С1 Задача относится к повышенному уровню сложности Программа содержит некоторое количество условий (циклов и массивов нет) Необходимо найти ошибку в программе (смысловую, а не синтаксическую) Изменить программу для устранения случаев неправильной работы

Пример. Требовалось написать программу, которая вводит с клавиатуры координаты точки на плоскости (x, y – действительные числа) и определяет принадлежность точки заштрихованной области, включая ее границы. Программист торопился и написал программу неправильно. БейсикПаскальСи INPUT x, y IF y>=x THEN IF y>=0 THEN IF y=x then if y>=0 then if y=x) if (y>=0) if (y

Последовательно выполните следующее. 1.Перерисуйте и заполните таблицу, которая показывает, как работает программа при аргументах, принадлежащих различным областям (A, B, C, D, E, F и G). Точки, лежащие на границах областей, отдельно не рассматривать. В столбцах условий укажите "да", если условие выполнится, "нет" если условие не выполнится, "" (прочерк), если условие не будет проверяться, «не изв.», если программа ведет себя по-разному для разных значений, принадлежащих данной области. В столбце "Программа выведет" укажите, что программа выведет на экран. Если программа ничего не выводит, напишите "" (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите «не изв». В последнем столбце укажите "да" или "нет". 2.Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, достаточно указать любой способ доработки исходной программы.) Областьy>=x?y>=0?y

БейсикПаскальСи IF y>=x THEN IF y>=0 THEN IF y=x then if y>=0 then if y=x) if (y>=0) if (y

В столбцах условий укажите "да", если условие выполнится, "нет" если условие не выполнится, " (прочерк), если условие не будет проверяться, «не изв.», если программа ведет себя по-разному для разных значений, принадлежащих данной области. В столбце "Программа выведет" укажите, что программа выведет на экран. Если программа ничего не выводит, напишите "" (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите «не изв». В последнем столбце укажите "да" или "нет". Областьy>=x?y>=0?y=x then if y>=0 then if y

В столбцах условий укажите "да", если условие выполнится, "нет" если условие не выполнится, " (прочерк), если условие не будет проверяться, «не изв.», если программа ведет себя по-разному для разных значений, принадлежащих данной области. В столбце "Программа выведет" укажите, что программа выведет на экран. Если программа ничего не выводит, напишите "" (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите «не изв». В последнем столбце укажите "да" или "нет". Областьy>=x?y>=0?y=x then if y>=0 then if y

В столбцах условий укажите "да", если условие выполнится, "нет" если условие не выполнится, " (прочерк), если условие не будет проверяться, «не изв.», если программа ведет себя по-разному для разных значений, принадлежащих данной области. В столбце "Программа выведет" укажите, что программа выведет на экран. Если программа ничего не выводит, напишите "" (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите «не изв». В последнем столбце укажите "да" или "нет". Областьy>=x?y>=0?y=x then if y>=0 then if y

В столбцах условий укажите "да", если условие выполнится, "нет" если условие не выполнится, " (прочерк), если условие не будет проверяться, «не изв.», если программа ведет себя по-разному для разных значений, принадлежащих данной области. В столбце "Программа выведет" укажите, что программа выведет на экран. Если программа ничего не выводит, напишите "" (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите «не изв». В последнем столбце укажите "да" или "нет". Областьy>=x?y>=0?y=x then if y>=0 then if y

В столбцах условий укажите "да", если условие выполнится, "нет" если условие не выполнится, " (прочерк), если условие не будет проверяться, «не изв.», если программа ведет себя по-разному для разных значений, принадлежащих данной области. В столбце "Программа выведет" укажите, что программа выведет на экран. Если программа ничего не выводит, напишите "" (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите «не изв». В последнем столбце укажите "да" или "нет". Областьy>=x?y>=0?y=x then if y>=0 then if y

(y =0) (y =x

(y =0) (y =x) (y =0) или (y =x) (y =0) или (y>=x))

БейсикПаскальСи INPUT x, y IF ((y>=x)or(y>=0))and(y=x)or(y>=0))and(y=x) II(y>=0)) && (y

Задание С2 Написать короткую (15 строк) простую программу (например, обработка массива) Программа линейной обработки входной последовательности

Пример. (С2) Дан целочисленный массив из 30 элементов. Элементы массива могут принимать значения от 0 до Опишите на русском языке или на одном из языков программирования алгоритм, который позволяет подсчитать и вывести среднее арифметическое элементов массива, имеющих нечетное значение. Гарантируется, что в исходном массиве хотя бы один элемент имеет нечетное значение. Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них.

Паскаль const N=30; var a: array [1..N] of integer; i, x, y: integer; s: real; begin for i:=1 to N do readln(a[i]); Бейсик N=30 DIM A(N) AS INTEGER DIM I, X, Y AS INTEGER DIM S AS SINGLE FOR I = 1 TO N INPUT A(I) NEXT I Си #include #define N 30 void main(void) {int a[N]; int i, x, y; float s; for (i=0; i

Паскаль const N=30; var a: array [1..N] of integer; i, x, y: integer; s: real; begin for i:=1 to N do readln(a[i]); x:=0; y:=0; for i:=1 to N do if (a[i] mod 20) then begin x:=x+a[i]; y:=y+1; end; s:=x/y; writeln(s); end. Бейсик N=30 DIM A(N) AS INTEGER DIM I, X, Y AS INTEGER DIM S AS SINGLE FOR I = 1 TO N INPUT A(I) NEXT I X = 0 Y = 0 FOR I = 1 TO N IF A(I) MOD 2 0 THEN X = X + A(I) Y = Y + 1 ENDIF NEXT I S = X / Y PRINT S Си #include #define N 30 void main(void) {int a[N]; int i, x, y; float s; for (i=0; i

Пример. (С2) Опишите на русском языке или одном из языков программирования алгоритм вычисления количества наибольших элементов в заданном целочисленном массиве из 30 элементов.

Паскаль var a:array[1..30] of integer; i, k, max: integer; begin for i:=1 to 30 do read(a[i]); Бейсик DIM I, K, max, A(30) AS INTEGER FOR I=1 to 30 INPUT A(I) NEXT I Си void main(void) { int i, k, max, a[30]; for( i=0;i

Паскаль var a:array[1..30] of integer; i, k, max: integer; begin for i:=1 to 30 do read(a[i]); max:=a[1]; k:= 1; Бейсик DIM I, K,max,A(30) AS INTEGER FOR I=1 to 30 INPUT A(I) NEXT I max=A(1): k= 1 Си void main(void) { int i, k, max, a[30]; for( i=0;i

Паскаль var a:array[1..30] of integer; i, k, max: integer; begin for i:=1 to 30 do read(a[i]); max:=a[1]; k:= 1; for i:=2 to 30 do if a [i] > max then Бейсик DIM I, K,max,A(30) AS INTEGER FOR I=1 to 30 INPUT A(I) NEXT I max=A(1): k= 1 FOR I = 2 TO 30 IF A(I) >max THEN Си void main(void) { int i, k, max, a[30]; for( i=0;i

Паскаль var a:array[1..30] of integer; i, k, max: integer; begin for i:=1 to 30 do read(a[i]); max:=a[1]; k:= 1; for i:=2 to 30 do if a [i] > max then begin max:= a[i] ; k:=1 end Бейсик DIM I, K,max,A(30) AS INTEGER FOR I=1 to 30 INPUT A(I) NEXT I max=A(1): k= 1 FOR I = 2 TO 30 IF A(I) >max THEN max = A(I): K=1 Си void main(void) { int i, k, max, a[30]; for( i=0;i

Паскаль var a:array[1..30] of integer; i, k, max: integer; begin for i:=1 to 30 do read(a[i]); max:=a[1]; k:= 1; for i:=2 to 30 do if a [i] > max then begin max:= a[i] ; k:=1 end else if a[i]=max then k:=k+1; Бейсик DIM I, K,max,A( 30 ) AS INTEGER FOR I=1 to 30 INPUT A(I) NEXT I max=A(1): k= 1 FOR I = 2 TO 30 IF A(I) >max THEN max = A(I): K=1 ELSE IF A(I)=max THEN K=K+1 ENDIF Си void main(void) { int i, k, max, a[30]; for( i=0;i

Паскаль var a:array[1..30] of integer; i, k, max: integer; begin for i:=1 to 30 do read(a[i]); max:=a[1]; k:= 1; for i:=2 to 30 do if a [i] > max then begin max:= a[i] ; k:=1 end else if a[i]=max then k:=k+1; write(k) end. Бейсик DIM I, K, MAX,A( 30 ) AS INTEGER FOR I=1 to 30 INPUT A(I) NEXT I MAX=A(1): k= 1 FOR I = 2 TO 30 IF A(I) >MAX THEN MAX = A(I): K=1 ELSE IF A(I)=MAX THEN K=K+1 ENDIF NEXT I PRINT K END Си void main(void) { int i, k, max, a[30]; for( i=0;i< 30;i++) scanf(%d",&a[i]); max=a[0]; k= 1; for( i=1;i< 30;i++) if (a [i] > max) {max= a[i] ; k=1;} else if (a[i]==max) k++; printf(%d,k); }

Паскаль var a:array[1..30] of integer; i, k, max: integer; begin for i:=1 to 30 do read(a[i]); max:=a[1]; k:= 1; for i:=2 to 30 do if a [i] > max then begin max:= a[i] ; k:=1 end else if a[i]=max then k:=k+1; write(k) end. Бейсик DIM I, K, MAX,A( 30 ) AS INTEGER FOR I=1 to 30 INPUT A(I) NEXT I MAX=A(1): k= 1 FOR I = 2 TO 30 IF A(I) >MAX THEN MAX = A(I): K=1 ELSE IF A(I)=MAX THEN K=K+1 ENDIF NEXT I PRINT K END Си void main(void) { int i, k, max, a[30]; for( i=0;i< 30;i++) scanf(%d",&a[i]); max=a[0]; k= 1; for( i=1;i< 30;i++) if (a [i] > max) {max= a[i] ; k=1;} else if (a[i]==max) k++; printf(%d,k); }

Пример 9. (С2) С клавиатуры вводят целые числа. Признак конца ввода - ввод нуля. Опишите на русском языке или одном из языков программирования алгоритм вычисления суммы тех чисел, которые кратны трем. Считаем, что хотя бы одно такое число в последовательности есть.

Паскаль var a, S: integer; begin S:=0; Бейсик DIM A,S AS INTEGER S=0 Си void main() { int a,S; S=0;

Паскаль var a, S: integer; begin S:=0; readln(a); While (a0) do Begin Бейсик DIM A,S AS INTEGER S=0 INPUT A WHILE A 0 Си void main() { int a,S; S=0; scanf(%d",&a); while(a 0) {

Паскаль var a, S: integer; begin S:=0; readln(a); While (a0) do Begin if (a mod 3 = 0) then S:=S+a; Бейсик DIM A,S AS INTEGER S=0 INPUT A WHILE A 0 IF A MOD 3 = 0 THEN S = S+A ENDIF Си void main() { int a,S; S=0; scanf(%d",&a); while(a 0) { if (a % 3 == 0) S+=a;

Паскаль var a, S: integer; begin S:=0; readln(a); While (a0) do Begin if (a mod 3 = 0) then S:=S+a; Readln(a) End; Бейсик DIM A,S AS INTEGER S=0 INPUT A WHILE A 0 IF A MOD 3 = 0 THEN S = S+A ENDIF INPUT A WEND Си void main() { int a,S; S=0; scanf(%d",&a); while(a 0) { if (a % 3 == 0) S+=a; scanf(%d",&a); }

Паскаль var a, S: integer; begin S:=0; readln(a); While (a0) do Begin if (a mod 3 = 0) then S:=S+a; Readln(a) End; writeln(S) end. Бейсик DIM A,S AS INTEGER S=0 INPUT A WHILE A 0 IF A MOD 3 = 0 THEN S = S+A ENDIF INPUT A WEND PRINT S END Си void main() { int a,S; S=0; scanf(%d",&a); while(a 0) { if (a % 3 == 0) S+=a; scanf(%d",&a); } printf(%d,k); }