Моим ученикам
Здесь вы найдете материалы, которые пригодятся вам для подготовки к урокам и многое другое, что надеюсь, будет вам полезным :)
Скачать:
Вложение | Размер |
---|---|
paskal_1.ppt | 139.5 КБ |
standartnye_funkcii.ppt | 141 КБ |
zadachi_pascal.doc | 220.5 КБ |
bilety_9klass.doc | 41.5 КБ |
Предварительный просмотр:
Подписи к слайдам:
Предварительный просмотр:
Подписи к слайдам:
Темы: Операции Функции Приоритетность
Операции: Арифметические операции Операции отношения Булевские (логические) операции Поразрядные логические и сдвиговые операции Операции над множествами
Арифметические операции Сложение + - * / Вычитание Деление Умножение
Целочисленное деление (деление с остатком) div mod Неполное частное (целая часть) Остаток от деления
Примеры целочисленного деления 23 div 5 = 4 16 div 4 = 4 5 div 8 = 0 37 div 10 = 3 23 mod 5 = 3 16 mod 4 = 0 5 mod 8 = 5 37 mod 10 = 7
Определить кол-во оставшихся слив, если их делили на 5 человек Алг сливы арг а рез b НАЧ ввод (a) b:= a mod 5 вывод (‘ Осталось ‘ , b,’ слив ’) КОН
Определить, сколько попугаев поместится на удаве (длина попугая - a , длина удава - b ) Алг попугаи арг а, b рез с НАЧ ввод (a) ввод (b) c:= b div a вывод (' Поместится ', с, ‘ попугаев ') КОН
Операции отношения Не равно <> Меньше = Равно Больше < > < = > = Меньше или равно Больше или равно
Функции Арифметические функции Тригонометрические функции Экспонента и логарифм Преобразование типов Случайные числа
Арифметические функции S q r (x) __ x (квадратный корень) S q r t (x) x 2 (квадрат числа) A b s (x) |x| (модуль числа)
Вычислить гипотенузу прямоугольного треугольника (длина катетов - a и b ) Алг гипотенуза арг а, b рез с НАЧ ввод (a) ввод (b) c:= sqrt (sqr(a) + sqr(b) ) вывод ('c=', с:5:2) КОН
Вычислить модуль разности чисел a и b ) Алг модуль арг а, b рез с НАЧ ввод (a) ввод (b) c:= abs (a - b) вывод (' модуль =', с) КОН
Тригонометрические функции S i n (x) C o s (x) sin x ArcTan(x) в радианах cos x arctg x
Вычислить синус, косинус, тангенс и котангенс угла 30 a:=Pi/180*30 s:=sin(a); c:=cos(a) t:=s/c; ct:=c/s;
Экспонента и логарифм E x p (x) ln x (натуральный логарифм ) L n (x) e x (экспонента числа, e 2.7183 ) E x p ( b * L n ( a ) ) a b
Примеры вычисления степени (x-3) 7 2 x 3 __ x exp(7 * ln(x-3)) exp(x * ln(2)) exp(1/3 * ln(x))
Преобразование типов Round(x) Перевод дробного числа в целое с отбрасыванием дробной части Trunc(x) Перевод дробного числа в целое с округлением
Примеры преобразования типов a1:=Round(2.34); a2:=Trunc(2.34); b1:=Round(8.51); b2:=Trunc(8.51); c1:=Round(-3.7); a1 = 2 a2 = 2 b1 = 9 b2 = 8 c1 = -4
Генерация случайных чисел Random Формирование случайного дробного числа из диапазона от 0 до 1 Randomize ; Установка датчика случайных чисел в исходное состояние
Примеры получения дробных случайных чисел a:=Random; x:=Random+10; y:=5*Random; c:=10*Random-5; b:=7*Random-3; 0 Случайные целые числа Random(N) Формирование случайного целого числа из диапазона от 0 до N- 1 натуральное Примеры получения целых случайных чисел a:=Random (3) ; x:=Random ( 10 ) ; y:=Random (5)+3 ; c:=Random (8) -5; 0 , 1 ,2 0 ,1,2,…,9 3,4,5,…,7 -5 ,-4,…,2 Смоделировать 5-кратное бросание игрального кубика Алг кубик арг i , рез x НАЧ randomize Для i=1 д o 5 выполнить x:=random(6)+1 вывод (i,‘ бросок: ',x,’ очков ’) КОН Смоделировать 10 -кратное бросание монеты randomize; для i=1 д o 10 do если random( 2 )=0 то вывод (’ орел ’) иначе вывод (’ решка ’); Приоритетность выполнения действий Выражение в скобках Функции Знак числа (+,-), not, @ *, /, div, mod, and, shl, shr +, -, or, xor =, <>, <, >, <=, >=, in
Предварительный просмотр:
Примеры решения задач на языке Паскаль
{1. Одна сторона прямоугольника на 5 см. длиннее другой, а сумма их длин равна 17 см. Найти стороны этого прямоугольника.}
uses crt;
var summa,raz,st:real;
storona1,storona2:real;
begin
ClrScr;
writeln('Введите сумму длин сторон прямоугольника');
readln(summa);
writeln('Введите на сколько одна сторона больше другой');
readln(raz);
st:= (summa - raz) / 2;
storona1:= st;
storona2:= st + raz;
write ('ширина-',storona1:7:2,'см.');
write ('длина-',storona2:7:2,'см.');
end.
{2. Нефтебаза отпустила за два дня 2560 л. бензина. Во второй день база отпустила на 280 л. больше. Сколько литров бензина база отпустила отдельно за каждый день? }
uses crt;
var summa,raz,st,day1,day2:real;
begin;
clrscr;
write('Сколько литров бензина отпустила нефтебаза за 2 дня');
readln(summa);
writeln('Введите на сколько отпущенное кол-во бензина одного дня больше чем другого');
readln(raz);
st:= (summa - raz) / 2.0;
day1:= st;
day2:= st + raz;
writeln('первый день-',day1:7:2,'л.');
writeln('второй день-',day2:7:2,'л.');
end.
{3. Одно число в 2 раза больше другого, а их сумма равна 93. Найти эти числа.}
uses crt;
var summa,raz,st,storona1,storona2:real;
begin
ClrScr;
writeln('Введите сумму двух чисел');
readln(summa);
writeln('Введите во сколько раз одно больше другого');
readln(raz);
st:= summa / (raz + 1);
storona1:= st;
storona2:= st * raz;
write ('1 число-',storona1:7:2,' ед.');
write ('2 число-',storona2:7:2,' ед.');
end.
{4. Составьте алгоритм и программу для определения сдачи после покупки в магазине товара: перчаток стоимостью а руб., портфеля стоимостью б руб., галстука стоимостью с руб. Исходная сумма, выделенная на покупку d руб. В случае нехватки денег сдача получится отрицательной.}
uses crt;
var change,per,por,gal,cash:longint;
begin;
clrscr;
write('введите стоимость перчаток-');
readln(per);
write('введите стоимость портфеля-');
readln(por);
write('введите стоимость галстука-');
readln(gal);
write('введите кол-во денег, имеущихся в наличии-');
readln(cash);
change:= cash - (per + por + gal);
writeln('Сдача - ',change,'руб.');
end.
{5.В течении месяца продавец доставлялна дом 4 л молока в день. В марте молоко стоило х руб за литр Спервого апреля цена молока увеличилась до [x+a] руб за литр Сколько надо заплатить продавцу за все доставленное молоко в конце апреля? Кол-во покупаемого молока осталось прежним}
uses crt;
var march,april,payment:real;
begin;
clrscr;
writeln('Введите стоимость отпускаемого молока в марте');
readln(march);
writeln('Введите стоимость отпускаемого молока в апреле');
readln(april);
payment:= march * 4 * 31 + april * 4 * 30;
writeln('Вы должны заплатить с 1-го марта по 30-е апреля включительно ',payment:7:2, ' руб.')
end.
{6. Хозяин хочет оклеить обоями длинную стену в своем доме. Длина этой стены равна а и высота б. Рулон обоев имеет длину 12 м и ширину 1 м. Сколько будут стоить обои для всей стены если цена одного рулона к руб}
uses crt;
var a,b,c,d,price,payment,k:real;
begin;
clrscr;
writeln('Введите параметры стены(высота)');
readln(a);
writeln('Введите параметры стены(ширина)');
readln(b);
writeln('Введите стоимость одного рулона обоев');
readln(price);
writeln('Введите длину рулона обоев)');
readln(d);
writeln('Введите ширину рулона обоев');
readln(c);
k:=b/((d/a)*c)+1;
payment:=k * price;
writeln('Обои для всей стены будут стоить ',payment:7:2,' руб.');
writeln('Вам потребуется купить',k,' рулонов');
end.
{7. Некоторый автомат может запросить два числа и выполнить 3 команды. Команда а преобразует имеющуюся пару чисел (х,у) в пару (х-у,у) команда б преобразует пару чисел (х,у) в пару (х+у,у) команда с преобразует пару (ч,у) в (у,х) Составьте алгоритм и программу работы автомата}
uses crt;
var x,y,number:integer;
begin;
Clrscr;
writeln('Введите число (x)');
readln(x);
writeln('Введите число (y)');
readln(y);
writeln('Какое преобразование следует выполнить:1.(x-y,y), 2.(x+y,y), 3.(y,x)');
readln(number);
case number of
1: writeln(x - y,',',y);
2: writeln(x + y,',', y);
3: writeln(y,',', x);
end;
end.
{8. Составьте алгоритм и программу выбирающую из трех чисел то которое лежит между двумя другими }
uses crt;
var a,b,c,low,high,mid:integer;
begin;
clrscr;
writeln('Введите три числа(после каждрого ENTER)');
readln(a);
readln(b);
readln(c);
low:=a;
high:=a;
IF b < low THEN low:=b;
IF c < low THEN low:= c;
IF b > high THEN high := b;
IF c > high THEN high := c;
IF low=a THEN begin
if high=b then mid:=c;
if high=c then mid:=b;
end;
IF low=b THEN begin
if high=c then mid:=a;
if high=a then mid:=c;
end;
IF low=c THEN begin
if high=a then mid:=b;
if high=b then mid:=a;
end;
writeln('Между ',low,' и ', high,' лежит ', mid);
end.
uses crt;
var choice,x,y:integer;
label 1,2;
begin;
clrscr;
writeln('Под какой буквой следует выполнить задание A(1) Б(2)');
readln(choice);
IF choice = 1 THEN GOTO 1;
IF choice = 2 THEN GOTO 2;
halt;
1:
clrscr;
writeln('Введите Х');
readln(x);
IF x >= 0 THEN writeln('Y=0');
IF x < 0 THEN writeln('Y=2*x', ' y=', x * 2);
halt;
2:
clrscr;
writeln('Введите Х');
readln(x);
IF x < 0 THEN writeln('Y=x^2', ' Y=', x *x);
IF x >= 0 THEN writeln('Y=-(x^2)', ' y=', -(x * x));
halt;
end.
{10. Определить в какие отряды распределят детей}
uses crt;
var adge:integer;
begin;
clrscr;
writeln('Введите возраст ребенка');
readln(adge);
IF (adge > 5) and (adge <= 7) THEN writeln('5-й отряд');
IF (adge > 7) AND (adge <= 9) THEN writeln('4-й отряд') ;
IF (adge > 9) AND (adge <= 11) THEN writeln('3-й отряд') ;
IF (adge > 11) AND (adge <= 13) THEN writeln('2-й отряд') ;
IF (adge > 13) AND (adge <= 15) THEN writeln('1-й отряд') ;
IF (adge < 6) OR (adge > 15) THEN writeln('В лагерь не допускается');
end.
{11 Построение треугольника по трем точкам}
uses crt,graph;
var x,x1,x2,y,y1,y2,gd,gm:integer;
a,b,c:real;
begin
clrscr;
writeln('Введите координаты первой точки (X и Y) после каждой коор. ENTER');
readln(x);
readln(y);
writeln('Введите координаты второй точки (X1 и Y1) после каждой коор. ENTER');
readln(x1);
readln(y1);
writeln('Введите координаты третьей точки (X2 и Y2) после каждой коор. ENTER');
readln(x2);
readln(y2);
a:=sqrt((x-x1)*(x-x1)+(y-y1)*(y-y1));
b:=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
c:=sqrt((x2-x)*(x2-x)+(y2-y)*(y2-y));
if (a+b>c) and (c+b>a) and (a+c>b) then
begin
writeln('Построение треугольника провести можно ');
initgraph(gd,gm,'c:\bp\bgi');
line(x,y,x1,y1);
line(x1,y1,x2,y2);
line(x2,y2,x,y);
delay(3000);
end
else writeln('Треугольник не построится ');
end.
{12 Программа проверяющая выполняется ли условие существования треугольника}
uses crt;
var a,b,c:integer;
p,s:real;
begin
clrscr;
writeln('Введите длины сторон тр-ка (a,b,c)');
readln(a);
readln(b);
readln(c);
p:=a+b+c;
s:=sqr(p/2*(p/2-a)*(p/2-b)*(p/2-c));
if (a+b>c) and (a+c>b) and (c+b>a) then
begin
writeln('Периметр - ',p);
writeln('Площадь - ',s);
end
else writeln('Треугольник не существует');
end.
{13. Определить какая из двух точек находится дальше от: начала координат; окружности заданного радиуса с центром в начале координат }
uses crt;
var x1,x2,y1,y2,r:real;
begin;
clrscr;
writeln('Введите координаты первой точки (X и Y) после каждой коор. ENTER');
readln(x1);
readln(y1);
writeln('Введите координаты второй точки (X1 и Y1) после каждой коор. ENTER');
readln(x2);
readln(y2);
writeln('Введите радиус окружности(если нет, то r=0)');
readln(r);
{Т.к. координаты должны браться по модулю, то:}
x1:= SQR(x1*x1);
x2:= SQR(x2*x2);
y1:= SQR(y1 *y1);
y2:= SQR(y2 * y2);
IF r *r > x1 * x1 + y1 *y1 THEN writeln('Первая точка лежит в пределах окружности');
IF r * r > x2 *x2 + y2 *y2 THEN writeln('Вторая точка лежит в пределах окружности');
IF x1 * x1 + y1 *y1> x2 *x2 + y2 *y2 THEN
begin
writeln('первая точка находится дальше.');
end
else writeln ('вторая точка находится дальше.');
IF x1 * x1 + y1 *y1> x2 *x2 + y2 *y2 THEN
begin
writeln('Первая точка лежит дальше от окружности');
end
else writeln('Вторая точка лежит дальше от окружности');
end.
{14. Определите из двух девочек старшую}
uses crt;
var adge1,adge2:integer;
begin;
clrscr;
writeln('Введите годы рождения девочек (первой и второй после каждой ENTER)');
readln(adge1, adge2);
iF adge1 < adge2 THEN writeln('Первая девочка старше') ELSE writeln('Вторая девочка старше');
end.
{15. Вводятся оценки по физике и математике Выведи на экран "Молодец" если их сумма равна или более 9 в противном случае выведи "Подтянись"}
uses crt;
var a,b:integer;
begin;
clrscr;
writeln('Введите оценки за контрольные работы по физике и математике после каждого пред. Enter');
readln(a);
readln(b);
IF a + b >= 9 THEN writeln('Молодец !') ELSE writeln('Подтянись');
end.
{16. Вычисление сдачи с покупки музыкального диска}
uses crt;
var r,k,r1,k1,how:real;
begin;
clrscr;
writeln('Введите стоимость диска(руб.,коп.) через Enter');
readln(r);
readln(k);
writeln('Введите размер располагаемой суммы(руб.,коп.) через Enter');
readln(r1);
readln(k1);
IF r * 100 + k < r1 * 100 + k1 THEN writeln('Да, вам хватит денег на покупку');
IF r * 100 + k > r1 * 100 + k1 THEN
begin;
how:= (r * 100 + k) - (r1 * 100 + k1);
r:= INT(how / 100);
k:= how - INT(how / 100) * 100;
writeln('Нет, вам не хватит денег на покупку ',r:7:0,' руб. ', k:7:0, ' коп.');
END;
end.
{17. Написать алгоритм вычисления чисел}
uses crt;
var x:real;
begin;
clrscr;
writeln('Введите число');
readln(x);
IF x > 0 THEN writeln('положительное число');
if x < 0 then writeln('отрицательное число');
if x=0 then writeln('0 = 0');
end.
{18. Написать алгоритм читающий "N" и выдающий на экран квадраты чисел от 1 до "N"}
uses crt;
var i,n:integer;
begin;
clrscr;
writeln('Введите число N');
readln(n);
FOR i := 1 TO n do
begin;
writeln(i * i);
end;
end.
{19. Нахождение точки с координатами (х,у)}
uses crt;
var x,y:integer;
begin;
clrscr;
writeln('Введите координаты точки (x)');
readln(x);
writeln('Введите координаты точки (y)');
readln(y);
IF (x = 0) OR (y = 0) THEN writeln ('Точка лежит на разделе четвертей');
IF (x > 0) AND (y > 0) THEN writeln('I-я четверть');
IF (x < 0) AND (y > 0) THEN writeln('II-я четверть');
IF (x < 0) AND (y < 0) THEN writeln('III-я четверть');
IF (x > 0) AND (y < 0) THEN writeln('IV-я четверть');
end.
{20. Определение номера краски}
uses crt;
var color:string;
a:integer;
begin;
clrscr;
writeln('Введите цвет (маленькие буквы)');
readln(color);
a:=1;
IF color = 'красный' THEN
begin
writeln('1');a:=0;
end;
IF color = 'зеленый' THEN
begin
writeln('2');a:=0;
end;
IF color = 'желтый' THEN
begin
writeln('3');a:=0;
end;
IF color = 'черный' THEN
begin
writeln('4');a:=0;
end;
IF color = 'белый' THEN
begin
writeln('5'); a:=0;
end;
IF color = 'синий' THEN
begin
writeln('6'); a:=0;
end;
IF color = 'коричневый' THEN
begin
writeln('7');a:=0;
end;
if a=1 then writeln('такой краски нет');
end.
{21. Выбрать лучший результат}
uses crt;
var a,b,c,high:integer;
begin;
clrscr;
writeln('Введите результаты по плаванию для трех спортсменов через Enter');
readln(a);
readln(b);
readln(c);
IF (a > b) AND (a > c) THEN high := a;
IF (b > a) AND (b > c) THEN high := b;
IF (c > a) AND (c > b) THEN high := c;
writeln('Наивысший результат ',high);
end.
uses crt;
var n,a,k:integer;
nn:real;
label 1;
begin
clrscr;
writeln('Введите целое число N(1-100)');
readln(n);
writeln('Введите число для поиска в разложении ведденого числа');
readln(k);
a:=0;
nn:=n;
1:
nn:=(nn/k);
if int(nn) <> nn then
begin
clrscr;
writeln('Число ',k,' встречается ',a,' раз(а)');
end
else a:=a+1;
goto 1
end.
{23. Сколько раз встречается цифра К в натуральном М}
uses crt;
var m:string[79];
k:string[79];
number,i:integer;
position:byte;
procedure Search;
begin
Position:=pos(k,m);
IF position<>0 then number := number + 1;
end;
begin;
clrscr;
writeln('Введите натуральное число M');
readln(m);
writeln('Введите число k (так, чтобы 0<=k<=9)');
readln(k);
clrscr;
search;
writeln('В числе ', m, ' число ', k, ' встречается ', number, ' раз');
end.
{24. Вычислить сколько цифр в числе}
uses crt;
var number:string;
begin;
clrscr;
writeln('Введите натуральное число N');
readln(number);
writeln('В числе ', number, ' цифр ', length(number));
end.
{25. Расписание уроков в определенный день}
uses crt;
var day:integer;
label 11,22,33,44,55;
begin;
clrscr;
writeln('введите номер дня недели');
readln(day);
case day of
1:goto 11;
2:goto 22;
3:goto 33;
4:goto 44;
5:goto 55;
end;
writeln('А у нас пятидневка');
halt;
11: writeln ('1.математика');
writeln ('2.математика');
writeln('3.химия');
writeln('4.физика');
writeln('5.биолог');
halt;
22: writeln ('1.математика');
writeln ('2.литер.');
writeln ('3.ин.яз.');
writeln ('4.физика');
writeln ('5.физ-ра');
halt;
33: writeln ('1.литер.');
writeln ('2.литер.');
writeln ('3.ин.яз.');
writeln ('4.химия');
halt;
44: writeln ('1.инф');
writeln ('2.математика');
writeln ('3.биолог');
writeln ('4.географ.');
writeln ('5.географ');
halt;
55: writeln ('1.математика');
writeln ('2.литер.');
writeln ('3.истор');
writeln ('4.истор');
writeln ('5.литер.');
halt;
end.
{26. Кол-во дней в месяцах}
uses crt;
var m,year:integer;
begin;
clrscr;
writeln('Високосный ли год (1-да,0-нет)');
readln(year);
writeln('Введите номер месяца');
readln(m);
IF m = 1 THEN writeln ('январь, 31-день');
IF (m = 2) AND (year = 0) THEN writeln ('февраль(невисокосный), 28-дней');
IF (m = 2) AND (year = 1) THEN writeln ('февраль(високосный), 29-дней');
IF m = 3 THEN writeln ('март, 31-день');
IF m = 4 THEN writeln ('апрель, 30-день');
IF m = 5 THEN writeln ('май, 31-день');
IF m = 6 THEN writeln ('июнь, 30-день');
IF m = 7 THEN writeln ('июль, 31-день');
IF m = 8 THEN writeln ('август, 31-день');
IF m = 9 THEN writeln ('сентябрь, 30-день');
IF m = 10 THEN writeln ('октябрь, 31-день');
IF m = 11 THEN writeln ('ноябрь, 30-день');
IF m = 12 THEN writeln ('декабрь, 31-день');
end.
{27. Угадывание целых чисел}
uses crt;
var number,partner:integer;
label 1;
begin;
clrscr;
writeln('Первый игрок, введите число');
readln(number);
clrscr;
writeln('Второй игрок, ваш ход');
1:
readln(partner);
IF partner > number THEN
begin
writeln ('меньше'); GOTO 1;
end;
IF partner < number THEN
begin
writeln ('больше'); GOTO 1;
end;
IF partner = number THEN
begin
writeln ('Вы угадали'); halt;
end;
end.
{28. Подсчитывание кол-во кругов ученика}
uses crt;
var ask,number:integer;
label 1;
begin;
clrscr;
1:
writeln('Пробежишь еще кружочек ? (1-да, 2-нет)');
readln(ask);
IF ask = 1 THEN
begin
number := number + 1; clrscr; GOTO 1;
end;
IF ask = 2 THEN
begin
writeln('На нет и суда нет. Ты пробежал ', number, ' кругов');
halt;
end;
end.
{29. }
uses crt;
var choice:integer;
begin;
clrscr;
writeln('Математика(1) Физика(2) Информатика(3)');
readln(choice);
IF choice = 1 THEN
begin
clrscr;writeln('Математика-4')
end;
IF choice = 2 THEN
begin
clrscr;writeln('Физика-3');
end;
IF choice = 3 THEN
begin
clrscr;writeln('Информатика-5');
end;
end.
{30. Вычеркивание по выбору граф элементы}
uses graph,crt;
var gd,gm,choice:integer;
begin
initgraph(gd,gm,'');
outtext('Выберите длину отрезка:1-50 точек(1), 2-150 точек(2)');
readln(choice);
case choice of
1:LINE (295, 240,345, 240);
2:LINE (245, 240,395, 240);
end;
repeat;
until keypressed;
closegraph;
end.
{30. Выполнение граф построений}
uses graph,crt;
var gd,gm:integer;
begin
initgraph(gd,gm,'c:\bp\bgi');
LINE (150, 100,67, 100);
LINE (67, 100,102, 68);
LINE (102, 68,150, 100);
floodfill (100, 90, 15);
delay(2000);
clearviewport;
bar(73, 49,141, 109);
delay(2000);
clearviewport;
LINE (73, 49,103, 79);
LINE (103, 79,92, 120);
LINE (92, 120,50, 120);
LINE (50, 120,31, 79);
LINE (31, 79,73, 49);
floodfill (90, 90, 15);
delay(2000);
clearviewport;
LINE (73, 49,111, 49);
LINE (111, 49,132, 71);
LINE (132, 71,111, 93);
LINE (111, 93,73, 93);
LINE (73, 93,52, 71);
LINE (52, 71,73, 49);
floodfill (100, 90, 15);
repeat;
until keypressed;
closegraph;
end.
{32. Начертить N окружностей}
uses graph,crt;
var gd,gm,n,i:integer;
begin
initgraph(gd,gm,'c:\bp\bgi');
outtext('Введите кол-во окружностей');
readln(n);
clearviewport;
FOR i:= 1 TO n do
begin;
CIRCLE (Random(640),Random(480), 50)
end;
repeat;
until keypressed;
closegraph;
end.
{33. Построить многоугольник со сторонами 60 и 20 точек}
uses graph,crt;
var gd,gm,x,x1,y,y1:integer;
begin
initgraph(gd,gm,'c:\bp\bgi');
outtextxy(20,0,'Введите координаты левого верхнего угла прямоугольника (x,y)');
readln(x);
readln(y);
outtextxy(20,10,'Введите координаты правого нижнего угла прямоугольника (x1,y1)');
readln(x1);
readln(y1);
rectangle(x,y,x1,y1);
repeat;
until keypressed;
closegraph;
end.
{34. Построить и закрасить круг}
uses graph,crt;
var gd,gm,x,y,r:integer;
begin
initgraph(gd,gm,'c:\bp\bgi');
outtextxy(40,0,'Введите координаты центра окружности');
readln(x);
readln(y);
outtextxy(40,20,'Введите радиус окружности');
readln(r);
CIRCLE (x, y, r);
floodfill(x,y, 15);
repeat;
until keypressed;
closegraph;
end.
{35. Построить из окружностей рисунок облака}
uses graph,crt;
var gd,gm:integer;
begin
initgraph(gd,gm,'c:\bp\bgi');
SetFillStyle(1, 15);
setcolor(15);
CIRCLE (320, 240, 100);
floodfill (320, 240, 15);
CIRCLE (220, 240, 80);
floodfill (200, 240, 15);
CIRCLE (420, 240, 80);
floodfill (440, 240, 15);
repeat;
until keypressed;
closegraph;
end.
{36 Построение звезды}
uses graph,crt;
var gd,gm:integer;
begin
initgraph(gd,gm,'c:\bp\bgi');
setcolor(15);
line(220,240,320,100);
line(320,100,420,240);
line(220,140,420,140);
line(220,140,420,240);
line(420,140,220,240);
delay(3000);
end.
{37. Построение квадрата}
uses graph,crt;
var gd,gm,x,y,side:integer;
begin
initgraph(gd,gm,'c:\bp\bgi');
outtextxy(30,0,'Введите сторону квадрата.');
readln(side);
clearviewport;
outtextxy(30,0,'Введите координаты центра квадрата(X и Y через ENTER)');
readln(x);
readln(y);
clearviewport;
rectangle(x-side,y - side ,x + side , y + side );
repeat;
until keypressed;
closegraph;
end.
{38 Рисование луны}
uses crt,graph;
var gd,gm,choice:integer;
label 1,2,3;
begin;
clrscr;
writeln('1.полнолуние, 2.1/2 луны, 3.месяц');
readln(choice);
initgraph(gd,gm,'c:\bp\bgi');
IF choice = 1 THEN GOTO 1;
IF choice = 2 THEN GOTO 2;
IF choice = 3 THEN GOTO 3;
halt;
1:
CIRCLE (320, 240, 100);
floodfill(320,240,15);
repeat;
until keypressed;
halt;
2 :
arc(320, 240, 90, 270, 100);
LINE (320, 140,320, 340);
floodfill(300,240,15);
repeat;
until keypressed;
halt;
3 :
arc(320, 240, 90, 270, 100);
arc(490, 240, 150, 210, 200);
floodfill(285,240,15);
repeat;
until keypressed;
halt;
closegraph;
end.
{39 Построение треугольника по заданным координатам}
uses crt,graph;
var gd,gm,x,y,a,c:integer;
begin
clrscr;
writeln('Введите координаты центра звезды X и Y ');
readln(x);
readln(y);
writeln('Введите длину луча звезды (не меньше 90)');
readln(a);
initgraph(gd,gm,'c:\bp\bgi');
c:=round(3/4*a);
line(x,y-a,x+c,y+2*c);
line(x,y-a,x-c,y+2*c);
line(x+c,y+2*c,x-a-10,y-25);
line(x-c,y+2*c,x+a+10,y-25);
line(x+a+10,y-25,x-a-10,y-25);
delay(3000);
closegraph;
end.
{40. Построение кораблика}
uses graph,crt;
var gd,gm:integer;
a,h:real;
begin
initgraph(gd,gm,'c:\bp\bgi');
outtextxy (30,0,'Введите высоту и длину палубы (H и A через Enter)');
readln(h);
readln(a);
LINE (320 + round(a / 2), 240 - round(h / 2),320 + round(a/2), 240 + round(h/ 2));
LINE (320 + round(a / 2), 240 - round(h / 2),320 - round(a / 2), 240 - round(h / 2));
LINE (320 - round(a / 4), 240 + round(h / 2),320 + round(a / 2), 240 + round(h / 2));
LINE (320 - round(a / 4), 240 + round(h / 2),320 - round(a / 2), 240 - round(h / 2));
LINE (320, 240 - round(h / 2),320, 240 - round(h * 2));
LINE (320, 240 - round(h * 2),320 + round(a / 5), round(240 - h));
LINE (320, 240 - round(h),320 + round(a / 5),round( 240 - h));
repeat;
until keypressed;
closegraph;
end.
{41. }
uses graph,crt;
var gd,gm,i:integer;
x,y:real;
c:char;
label 0,1,2,3;
const aa=57.32484;
begin
initgraph(gd,gm,'c:\bp\bgi');
0: outtextxy (1,1,'День(д), ночь(н) (используйте заглавные буквы)');
outtextxy(1,10,'Press Esc to exit');
1:
c:=readkey;
IF c = chr(27) THEN halt;
IF c = 'Д' THEN GOTO 2;
IF c = 'Н' THEN GOTO 3;
GOTO 1;
2: clearviewport;
setcolor(14);
CIRCLE (320, 240, 100);
floodfill (320, 240, 14);
GOTO 0;
3:
setcolor(15);
clearviewport;
arc(320, 240, round(1.57*aa), round(4.71*aa),100);
GOTO 0;
end.
{42. Рожица}
uses graph,crt;
var gd,gm:integer;
c:char;
label 0,2,3;
begin
initgraph(gd,gm,'c:\bp\bgi');
circle(320, 240, 100);
ellipse(320, 280, 180, 360, 60,50);
ellipse(320, 240, 180, 360, 20,50);
ellipse(280, 200,0,360, 40,5);
ellipse(360, 200,0,360, 40,5);
outtextxy (1,1,'сон(с) утро(у)');
outtextxy (1,10,'Press Esc to exit');
0:
c:=readkey;
if c = chr(27) then halt;
IF c = 'у' THEN GOTO 2;
IF c = 'с' THEN GOTO 3;
GOTO 0;
2:
setcolor(0);
ellipse(280, 200,0,360, 40,5);
ellipse(360, 200,0,360, 40,5);
setcolor(14);
ellipse (280, 200,360,0,30,10);
ellipse (360, 200,360,0,30,10);
circle (280, 200,10);
CIRCLE (360, 200, 10);
GOTO 0;
3:
setcolor (0);
ellipse (280, 200,360,0,30,10);
ellipse (360, 200,360,0,30,10);
circle (280, 200,10);
CIRCLE (360, 200, 10);
setcolor(14);
ellipse(280, 200,0,360, 40,5);
ellipse(360, 200,0,360, 40,5);
GOTO 0;
repeat;
until keypressed;
closegraph;
end.
{43. }
uses graph,crt;
var gd,gm,a:integer;
c:char;
label 0,1,2;
begin
initgraph(gd,gm,'c:\bp\bgi');
setcolor(12);
outtextxy(1,1,'Press Space key to change color of the fields');
outtextxy(1,10,'Press Esc to exit');
0:
c:=readkey;
if c = chr(27) then halt;
IF (c = ' ') AND (a = 1) THEN GOTO 2;
IF (c = ' ') AND (a = 0) THEN GOTO 1;
GOTO 0;
1:
setcolor(11);
LINE (320, 0,320, 480);
setfillstyle(1,15);
floodfill(1, 1, 11);
setfillstyle(1,8);
floodfill(639, 1, 11);
setcolor(12);
outtextxy(1,1,'Press Space key to change color of the fields');
outtextxy(1,10,'Press Esc to exit');
a:= 1;
GOTO 0;
2:
setcolor(11);
LINE (320, 0,320, 480);
setfillstyle(1,8);
floodfill(1, 1, 11);
setfillstyle(1,15);
floodfill(639, 1, 11);
setcolor(12);
outtextxy(1,1,'Press Space key to change color of the fields');
outtextxy(1,10,'Press Esc to exit');
a:= 0;
GOTO 0;
end.
{44. Изобразить термометр}
uses graph,crt;
var gd,gm,y,x:integer;
pressedkey:char;
label 0,1,2;
begin
initgraph(gd,gm,'c:\bp\bgi');
ellipse (320, 240, 360, 0, 28,200);
y:= 440;
outtext('Press up arrow key for moving up/down arrow key for moving down');
outtextxy(1,10,'Press Esc to exit');
0:
pressedkey:=readkey;
if pressedkey=chr(27) then halt;
if ord(pressedkey)=72 then goto 1;
if ord(pressedkey)=80 then goto 2;
goto 0;
1:
x:= 320;
y:= y - 2;
IF y < 45 THEN y:= 47;
putpixel (x, y, 13);
goto 0;
2:
putpixel (x, y, 0);
x:= 320;
y:= y + 2;
IF y > 440 THEN y:= 442;
putpixel(x, y, 0);
goto 0;
repeat;
until keypressed;
closegraph;
end.
{45. Построение изображение заказанного четырехугольника}
uses graph,crt;
var gd,gm,choice:integer;
label 1,2,3,4;
begin
writeln ('1-параллеограмм 2-прямоугольник 3-ромб 4-квадрат');
readln(choice);
initgraph(gd,gm,'c:\bp\bgi');
IF choice = 1 THEN GOTO 1;
IF choice = 2 THEN GOTO 2;
IF choice = 3 THEN GOTO 3;
IF choice = 4 THEN GOTO 4;
1:
clearviewport;
LINE (320, 240,400, 240);
LINE (350, 290,430, 290);
LINE (320, 240,350, 290);
LINE (400, 240,430, 290);
repeat;
until keypressed;
halt;
2:
clearviewport;
rectangle(320, 240,400, 290);
repeat;
until keypressed;
halt;
3:
clearviewport;
LINE (320, 240,270, 290);
LINE (320, 240,370, 290);
LINE (320, 340,370, 290);
LINE (320, 340,270, 290);
repeat;
until keypressed;
halt;
4:
clearviewport;
rectangle(320, 240,420, 340);
repeat;
until keypressed;
halt;
closegraph;
end.
{46. Построение многогранников}
uses graph,crt;
var gd,gm,choice:integer;
label 1,2,3;
begin
writeln('1-тетраэдр 2-куб 3-четырехугольная пирамида');
readln(choice);
initgraph(gd,gm,'c:\bp\bgi');
IF choice = 1 THEN GOTO 1;
IF choice = 2 THEN GOTO 2;
IF choice = 3 THEN GOTO 3;
1:
LINE (150, 100,67, 100);
LINE (67, 100,102, 68);
LINE (102, 68,150, 100);
LINE (150, 100,140, 50);
LINE (67, 100,140, 50);
LINE (102, 68,140, 50);
repeat;
until keypressed;
halt;
2:
rectangle (320, 240,220, 340);
rectangle (300, 200,200, 300);
LINE (320, 240,300, 200);
LINE (220, 240,200, 200);
LINE (320, 340,300, 300);
LINE (220, 340,200, 300);
repeat;
until keypressed;
halt;
3:
LINE (320, 240,400, 240);
LINE (350, 290,430, 290);
LINE (320, 240,350, 290);
LINE (400, 240,430, 290);
LINE (430, 290,350, 180);
LINE (350, 290,350, 180);
LINE (320, 240,350, 180);
LINE (400, 240,350, 180);
repeat;
until keypressed;
halt;
closegraph;
end.
{47. Управление точкой на экране}
uses graph,crt;
var gd,gm,x,y,x1,y1:integer;
c:char;
label 0,1,2,3,4;
begin
initgraph(gd,gm,'c:\bp\bgi');
y:= 50;
x:= 50;
outtext('Press up, down, left ,right aroow keys for moving the point');
outtextxy(10,10,'Press Esc to Exit');
0:
c:=readkey;
if c=chr(27) then halt;
if ord(c)=72 then goto 1;
if ord(c)=80 then goto 2;
if ord(c)=75 then goto 3;
if ord(c)=77 then goto 4;
GOTO 0;
1:
y := y - 1;
IF y < 1 THEN y:= 2;
putpixel(x1, y1, 0);
putpixel(x, y, 15);
x1 := x; y1 := y;
goto 0;
2:
putpixel(x, y, 0);
y := y + 1;
IF y > 479 THEN y := 478;
putpixel (x1, y1, 0);
putpixel (x, y, 15);
x1 := x; y1 := y;
goto 0;
3:
x := x - 1;
IF x < 1 THEN x := 2;
putpixel(x1, y1, 0);
putpixel (x, y, 15);
x1 := x; y1 := y;
goto 0;
4:
x := x + 1;
IF x > 639 THEN x := 638;
putpixel (x1, y1, 0);
putpixel (x, y, 15);
x1:= x; y1 := y;
goto 0;
end.
{48. }
uses graph,crt;
var gd,gm:integer;
c:char;
label 0,1,2,3,4;
begin
initgraph(gd,gm,'c:\bp\bgi');
0: outtext('прямоугольник(с) треугольник(к) два прямоугольника(о) - заглавные буквы');
outtextxy(1,10,'Press Esc to Exit');
1:c:=readkey;
if c=chr(27) then halt;
IF c = 'С' THEN GOTO 2;
IF c = 'К' THEN GOTO 3;
IF c = 'О' THEN GOTO 4;
GOTO 1;
2:
rectangle(320, 240,420, 320);
GOTO 0;
3:
LINE (320, 240,370, 180);
LINE (370, 180,420, 240);
LINE (320, 240,420, 240);
GOTO 0;
4:
rectangle (340, 250,370, 310);
rectangle (385, 260,415, 290);
GOTO 0;
closegraph;
end.
{49. Игра "Попади в центр мишени}
uses graph,crt;
var gd,gm,x,y:integer;
C:CHAR;
label 1;
begin
initgraph(gd,gm,'c:\bp\bgi');
setfillstyle(2,1);
bar(220, 140,420, 340);
setfillstyle(4,9);
bar(270, 190,370, 290);
outtextxy (30,0,'введите координаты(x и y через ENTER)');
outtextxy(30,10,'Press Esc to Exit');
1:c:=readkey;
if c=chr(27) then halt;
gotoxy(1,1);
readln(x);
gotoxy(1,2);
readln(Y);
putpixel(x, Y,12);
IF (x < 220) OR (x > 420) OR (Y < 140) OR (Y > 340) THEN
begin
outtextxy(20,400, '0 очков');
GOTO 1;
end;
IF (x >= 220) AND (x < 420) AND (Y >= 140) AND (Y < 190) OR (x >= 220) AND (x < 420) AND (Y >= 290) AND (Y < 340) THEN
begin
outtextxy(20,400, '5 очков');
goto 1;
end;
IF (x >= 270) AND (x < 370) AND (Y >= 190) AND (Y < 290) THEN
outtextxy(20,400, '10 очков');
begin
GOTO 1;
if c=chr(27) then halt;
end;
end.
{50. Закраска кругов разными цветами}
uses graph,crt;
var gd,gm:integer;
c:char;
label 0,2,3,4;
begin
initgraph(gd,gm,'c:\bp\bgi');
setcolor(15);
CIRCLE (320, 220,10);
CIRCLE (320, 240,10);
CIRCLE (320, 260,10);
outtextxy(10,10,'красный(к) желтый(ж) зеленый(з) - маленькие буквы');
outtextxy(10,20,'Выход - Esc');
0:
c:=readkey;
if c=chr(27) then halt;
IF c = 'к' THEN GOTO 2;
IF c = 'ж' THEN GOTO 3;
IF c = 'з' THEN GOTO 4;
GOTO 0;
2:
setfillstyle(1,12);
floodfill(320, 220, 15);
setfillstyle(1,0);
floodfill (320, 240, 15);
floodfill (320, 260, 15);
GOTO 0;
3:
setfillstyle(1,14);
floodfill (320, 240,15);
setfillstyle(1,0);
floodfill (320, 260,15);
floodfill (320, 220,15);
GOTO 0;
4:
setfillstyle(1,10);
floodfill(320, 260, 15);
setfillstyle(1,0);
floodfill (320, 220, 15);
floodfill (320, 240, 15);
GOTO 0;
end.
{51. Заполнить массив случайными числами из отрезка (А,В)}
uses crt;
var a,b,i:integer;
aa : array [1..10] of integer;
begin
clrscr;
writeln('Введите отрезок [a,b] (a и b через Enter)');
read(a);
read(b);
FOR i := 1 TO 10 do
begin
aa[i] := round(a + Random(b-a));
end;
FOR i := 1 TO 10 do
begin
writeln(aa[i])
end;
end.
{52. Заполнить таблицу}
uses crt;
var i,x,y:integer;
a:array[1..25] of integer;
begin
clrscr;
FOR i := 1 TO 25 do
begin
a[i] := round(random(10));
end;
FOR x := 1 TO 5 do
begin
FOR y := 1 TO 5 do
begin
gotoxy(x+5, y);writeln(a[x * y]);
end;
end;
end.
{54 Заполнить таблицу нулями}
uses crt;
var x,y,xx,yy:integer;
begin;
clrscr;
writeln('Введите размер таблицы x и y через Enter');
readln(x);
readln(y);
clrscr;
FOR xx := 1 TO x do
begin
FOR yy := 1 TO y do
begin
gotoxy(yy, xx); writeln('0');
end;
end;
end.
{55 Сделать все элементы таблицы равными заданному числу}
uses crt;
var x,y,xx,yy,a:integer;
begin;
clrscr;
writeln('Введите число');
readln(a);
writeln('Введите размер таблицы x и y через Enter');
readln(x);
readln(y);
clrscr;
FOR xx := 1 TO x do
begin
FOR yy := 1 TO y do
begin
gotoxy(yy, xx); writeln(a);
end;
end;
end.
сяца продавец доставлялна дом 4 л молока в день. В марте молоко стоило х руб за литр Спервого апреля цена молока увеличилась до [x+a] руб за литр Сколько надо заплатить продавцу за все доставленное молоко в конце апреля? Кол-во покупаемого молока осталось прежним}
uses crt;
var march,april,payment:real;
begin;
clrscr;
writeln('Введите стоимость отпускаемого молока в марте');
readln(march);
writeln('Введите стоимость отпускаемого молока в апреле');
readln(april);
payment:= march * 4 * 31 + april * 4 * 30;
writeln('Вы должны заплатить с 1-го марта по 30-е апреля включительно ',payment:7:2, ' руб.')
end.
{56 }
uses crt;
var x,y,i,j,s:integer;
begin
clrscr;
writeln('Введите размер таблицы (x,y)');
readln(x);
readln(y);
clrscr;
for i:=1 to x do;
for j:=1 to y do;
s(i,j):=(j+(i-1)*y)*(j+(i-1)*y);
locate i*2,j*4: writeln(s(i,j));
next j;
next i;
end.
{57 }
uses crt;
var x,y,i,j,s:integer;
begin
clrscr;
writeln('Введите размер таблицы (x,y)');
readln(x);
readln(y);
clrscr;
for i:=1 to x do;
for j:=1 to y do;
s(i,j):=(j+(i-1)*y)*2;
locate i*2,j*4: writeln(s(i,j));
next j;
next i;
end.
{58. }
uses crt;
var i,k,pol,numberofpol,chplace,plus,zero,minus,forabout:integer;
a:array[1..10000] of integer;
begin
clrscr;
write ('Введите размер массива ');
read(i);
begin
writeln('Введите элементы массива');
FOR k := 1 TO i do
begin
readln(a[k]);
end;
FOR k := 1 TO i do
IF a[k] > 0 THEN
begin
pol := pol + a[k]; numberofpol := numberofpol + 1;
end;
end;
writeln('Среднее арифмет.положительных элементов равно ', pol / numberofpol:7:2);
writeln('Среднее арифмет. элементов на отрезке [1,2] равно', (a[1] + a[2]) / 2:7:2);
FOR k := 1 TO i do
begin
IF a[k] > 0 THEN plus := plus + 1;
IF a[k] = 0 THEN zero := zero + 1;
IF a[k] < 0 THEN minus := minus + 1;
end;
writeln('Положительных ', plus, ' отрицательных ', minus, ' равных нулю ', zero);
FOR k := 1 TO i do
begin
IF round(a[k]) = 1 THEN forabout := forabout + 1;
end;
writeln('Элементов приближенно равных 1 насчитано ', forabout);
end.
{59. Сформировать массив из положительных элементов}
uses crt;
var i,k,pr,size,max:integer;
b:array[1..10] of integer;
a:array[1..10] of integer;
begin;
clrscr;
pr:= 1;
writeln('Введите размер массива');
readln(size);
writeln('Введите элементы массива');
FOR i := 1 TO size do
begin
readln(b[i]);
end;
begin
IF b[i] > 0 THEN
begin
k := k + 1;
a[k] := b[i];
end;
end;
FOR i := 1 TO k do
begin
pr := pr * a[i];
end;
writeln('Произведение положительных эл.массива ', pr);
writeln('Cформираванный массив A(I):');
FOR i := 1 TO k do
begin
writeln(a[i]);
end;
end.
{60. Заменить все элементы массива стоящие до максимального нулями}
uses crt;
var i,size,num,max:integer;
a:array[1..10000] of integer;
begin;
ClrScr;
writeln('Введите размер массива');
readln(size);
FOR i := 1 TO size do
begin
clrscr;
writeln('Введите элементы массива');
readln(a[i]);
end;
max := a[1];
clrscr;
writeln('Введенный массив');
FOR i := 1 TO size do
begin
writeln(a[i]);
IF a[i] > max THEN
begin
num := i-1;
max:=a[i];
end
end;
FOR i := 1 TO num do
begin
a[i] := 0;
end;
writeln('Сформированный массив');
FOR i := 1 TO size do
begin
writeln (a[i]);
end;
end.
{62. Заменить все элементы массива стоящие после минимального нулями}
uses crt;
var i,size,min,num:integer;
a:array[1..10000] of integer;
begin;
clrscr;
writeln('Введите размер массива');
readln(size);
writeln('Введите элементы массива');
FOR i := 1 TO size do
begin
readln(a[i]);
end;
min := a[1];
FOR i := 2 TO size do
begin
IF a[i] < min THEN
begin
num := i + 1;min:=a[i];
end;
end;
FOR i := num TO size do
begin
a[i] := 0;
end;
writeln('Сформированный массив:');
FOR i := 1 TO size do
begin
writeln(a[i]);
end;
end.
{63. Определить сколько элементов массива <,>,= X}
uses crt;
var x,i,size,more,less,mid:integer;
a:array[1..10000] of integer;
begin
CLrscr;
writeln('Введите размер массива');
readln(size);
writeln('Введите элементы массива');
FOR i := 1 TO size do
begin
readln(a[i])
end;
writeln('Введите число x');
readln(x);
FOR i := 1 TO size do
begin
IF a[i] > x THEN more := more + 1;
IF a[i] < x THEN less := less + 1;
IF a[i] = x THEN mid := mid + 1;
end;
writeln('Больше числа Х в массиве элементов ',more);
writeln('Меньше числа Х в массиве элементов ',less);
writeln('Равных числу Х в массиве элементов ', mid);
end.
{64. Сколько в массиве Т(м) элементов меньших суммы всех элементов}
uses crt;
var i,size,summa,num:integer;
t:array[1..10000] of integer;
begin;
clrscr;
writeln('Введите размер массива');
readln(size);
writeln('Введите элементы массива');
FOR i := 1 TO size do
begin
readln(t[i]);
end;
FOR i := 1 TO size do
begin
summa := summa + t[i];
end;
FOR i:= 1 TO size do
begin
IF t[i] < summa THEN num := num + 1;
end;
writeln('В массиве элементов меньше суммы всех элементов ', num);
end.
{65. Напечатать сумму, произведение и номера полож элементов после последнего нулевого элемента }
uses crt;
var i,size,num,summa,pr,k:integer;
x:array[1..10000] of integer;
n:array[1..10000] of integer;
begin;
clrscr;
writeln('Введите размер массива');
readln(size);
FOR i := 1 TO size do
begin
clrscr;
writeln('Введите элементы массива');
readln(x[i]);
end;
writeln('Введенный массив');
FOR i := 1 TO size do
begin
writeln(x[i]);
IF x[i] = 0 THEN num := i;
end;
if num=0 then
begin
writeln('Нулевые элементы не найдены');
halt;
end;
pr := 1;
FOR i := num + 1 TO size do
begin
IF x[i] > 0 THEN
begin
summa := summa + x[i]; pr := pr * x[i]; k := k + 1; n[k] := i;
end;
end;
writeln('Номера положительных элементов после последнего 0');
FOR i := k TO size do
begin
writeln(n[i]);
end;
writeln('Сумма положительных элементов после последнего 0 равна ', summa);
writeln('Произведение положительных элементов после последнего 0 равна ', pr);
end.
{66. Найти сумму и кол-во элементов в массиве Т после первого нулевого элемента}
uses crt;
var i,num,size,summa,k:integer;
t:array[1..10000] of integer;
begin;
clrscr;
writeln('Введите размер массива');
readln(size);
FOR i := 1 TO size do
begin
clrscr;
writeln('Введите элементы массива');
readln(t[i]);
end;
writeln('Введенные элементы');
for i:=1 to size do
begin
writeln(t[i]);
end;
FOR i := 1 TO size do
begin
IF t[i] = 0 THEN
num := i;
FOR k := num + 1 TO size do
begin
summa := summa + t[k];
end;
writeln('Сумма элементов после первого 0 равна ', summa);
writeln('Количество элементов после первого 0 равна ', size - i);
halt;
end;
end.
{67. Напечатать сумму отрицательных элементов массива А после первого нулевого элемента}
uses crt;
var i,size,num,summa:integer;
a:array [1..10000] of integer;
label 1;
begin;
clrscr;
writeln('Введите размер массива');
readln(size);
writeln('Введите элементы массива');
FOR i := 1 TO size do
begin
readln(a[i]);
end;
FOR i := 1 TO size do
begin
IF a[i] = 0 THEN
begin
num := i; GOTO 1;
end;
end;
1:
FOR i := num + 1 TO size do
begin
IF a[i] < 0 THEN summa := summa + a[i];
end;
writeln('Сумма отрицательных элементов после первого 0 равна ', summa);
end.
{68 Вывести номер координаты пункта В наиболее удаленного от пункта А}
uses crt;
var maxx,maxy,i,m,x,y,n:integer;
bx:array[1..1000] of integer;
by:array[1..1000] of integer;
bx1:array[1..1000] of integer;
by1:array[1..1000] of integer;
begin;
clrscr;
writeln('Введите координаты пункта А(x и y через Enter) ');
readln(x);
readln(y);
writeln('Введите количество пунктов В');
readln(m);
clrscr;
FOR i := 1 TO m do
begin
gotoxy(1,1);writeln('Введите координаты пунктов B(x и y через Enter)');
readln(bx[i]);
readln(by[i]);
end;
FOR i := 1 TO m do
begin
bx1[i] := SQR(bx[i]*bx[i]);
by1[i] := SQR(by[i]*by[i]);
IF (bx1[i] > x) AND (by1[i] > y) AND (bx1[i] > maxx) AND (by1[i] > maxy) THEN
begin
maxx := bx1[i]; maxy := by1[i]; n := i;
end;
end;
clrscr;
writeln('Точка A ',x,',',y);
writeln('Точки B ');
for i:=1 to m do
begin
writeln(bx[i],',',by[i]);
end;
writeln('Наиболее удалена точка с координатами ', bx[n], ',', by[n]);
end.
{69. Найти общее кол-во нулевых элементов в массивах Х(м) У(к)}
uses crt;
var i,m,k,num,numm,nn:integer;
x:array[1..10000] of integer;
y:array[1..10000] of integer;
begin;
clrscr;
writeln('Введите размер массива x(m)');
readln(m);
writeln('Введите размер массива y(k)');
readln(k);
writeln('Введите элементы массива x(m)');
FOR i := 1 TO m do
begin
readln(x[i]);
end;
writeln('Введите элементы массива y(k)');
FOR i := 1 TO k do
begin
readln(y[i]);
end;
FOR i := 1 TO m do
begin
IF x[i] = 0 THEN num := num + 1;
end;
FOR i := 1 TO k do
begin
IF y[i] = 0 THEN numm := numm + 1;
end;
if num>numm then nn:=numm else nn:=num;
writeln('Общее количество нулевых элементов в двух массиваx ', nn);
end.
{70. Напечатать число элементов в массиве Т}
uses crt;
var i,m,k,num:integer;
x:array[1..10000] of integer;
t:array[1..10000] of integer;
begin;
clrscr;
writeln('Введите размер массива x(m)');
readln(m);
FOR i := 1 TO m do
begin
clrscr;
writeln('Введите элементы массива x(m)');
readln(x[i]);
clrscr;
end;
writeln('Введенный массив');
FOR i := 1 TO m do
begin
writeln (x[i]);
IF x[i] >= 0 THEN
begin
num := num + 1; k := k + 1; t[k] := x[i];
end;
end;
writeln('Сформированный массив');
FOR i := 1 TO k do
begin
writeln (t[i]);
end;
writeln('Количество элементов в сформированном массиве ', num);
end.
{71. Вывести четные числа среди положительных элементов}
uses crt;
var i,m:integer;
x:array[1..10000] of integer;
begin;
clrscr;
writeln('Введите размер массива x(m)');
readln(m);
writeln('Введите элементы массива x(m)');
FOR i := 1 TO m do
begin
readln(x[i]);
end;
clrscr;
gotoxy(5,6);writeln('Четные среди положительных элементов массива');
FOR i := 1 TO m do
begin
IF (x[i] > 0) AND (x[i] / 2 = INT(x[i] / 2)) THEN
begin
gotoxy(i*3+5,8); writeln( x[i]); end;
gotoxy(i*3+5,10);writeln(x[i]);
end;
end.
{72. Удвоить наибольший элемент массива Х(м)}
uses crt;
var max,i,size,k:integer;
x:array[1..10000] of integer;
begin;
clrscr;
writeln('Введите размер массива');
readln(size);
writeln('Введите элементы массива');
FOR i := 1 TO size do
begin
readln(x[i]);
end;
max := x[1];
FOR i := 2 TO size do
begin
IF x[i] > max THEN
begin
max := x[i]; k := i;
end;
end;
x[k] := max * 2;
writeln('Массив с удвоенным максимальным элементом');
FOR i := 1 TO size do
begin
writeln (x[i]);
end;
end.
{73. Вывести ненулевые элементы массива Х(м) и их произведение}
uses crt;
var size,i,pr:integer;
x:array[1..10000] of integer;
begin;
clrscr;
writeln('Введите размер массива');
readln(size);
writeln('Введите элементы массива');
FOR i := 1 TO size do
begin
readln(x[i]);
end;
pr := 1;
writeln('Ненулевые элементы массива');
FOR i := 1 TO size do
begin
IF x[i] <> 0 THEN
begin
writeln(x[i]); pr := pr * x[i];
end;
end;
writeln('Их произведение ',pr);
end.
{74. Вывести положительные элементы массива Х(к) затем отрицать элементы массива У(м) и кол-во выведенных чисел}
uses crt;
var m,num,i,k:integer;
x:array[1..10000] of integer;
y:array[1..10000] of integer;
begin
clrscr;
writeln('Введите размер массива x(k)');
readln(k);
writeln('Введите размер массива y(m)');
readln(m);
writeln('Введите элементы массива x(k)');
FOR i := 1 TO k do
begin
readln(x[i]);
end;
writeln('Введите элементы массива y(m)');
FOR i := 1 TO m do
begin
readln(y[i]);
end;
writeln('Положительные элементы массива x(k)');
FOR i := 1 TO k do
begin
IF x[i] > 0 THEN
begin
writeln (x[i]);
num := num + 1;
end;
end;
writeln('Отрицательные элементы массива y(m)');
FOR i := 1 TO m do
begin
IF y[i] < 0 THEN
begin
writeln(y[i]); num := num + 1;
end;
end;
writeln('Количество выведенных элементов ', num);
end.
{75. Найти число элементов массива Т мньших С }
uses crt;
var m,i,c,summa,num:integer;
t:array[1..10000] of integer;
begin
clrscr;
writeln('Введите размер массива t(m)');
readln(m);
writeln('Введите число C');
readln(c);
writeln('Введите элементы массива t(m)');
FOR i := 1 TO m do
begin
readln(t[i]);
end;
FOR i := 1 TO m do
begin
IF t[i] > c THEN
begin
summa := summa + t[i]; num := num + 1;
end;
end;
writeln('Среднее арифметическое элементов больше C равно ', summa / num:7:2);
writeln('Количество элементов меньше С равно ',m - num);
end.
{76. Произвести перестановку массива}
uses crt;
var m,x,i,k:integer;
a:array[1..10000] of integer;
a2:array[1..10000] of integer;
begin;
clrscr;
writeln('Введите размер массива a(m)');
readln(m);
writeln('Введите число x');
readln(x);
FOR i := 1 TO m do
begin
clrscr;
writeln('Введите элементы массива a(m)');
readln(a[i]);
end;
clrscr;
writeln('Введенный массив');
FOR i := 1 TO m do
begin
writeln(a[i]);
IF a[i] < x THEN
begin
k := k + 1; a2[k] := a[i];
end;
end;
FOR i := 1 TO m do
begin
IF a[i] = x THEN
begin
k := k + 1; a2[k] := a[i];
end;
end;
FOR i := 1 TO m do
begin
IF a[i] > x THEN
begin
k := k + 1; a2[k] := a[i]
end;
end;
writeln('Сформированный массив');
FOR i := 1 TO m do
begin
writeln (a2[i]);
end;
end.
{77. Образовать третий массив из элементов встречающихся в обоих массивах}
uses crt;
var m,k,i,l,c:integer;
a:array[1..10000] of integer;
b:array[1..10000] of integer;
ab:array[1..10000] of integer;
begin;
clrscr;
writeln('Введите размер массива a(m)');
readln(m);
writeln('Введите размер массива b(k)');
readln(k);
clrscr;
writeln('Введите элементы массива a(m)');
FOR i := 1 TO m do
begin
readln(a[i]);
end;
writeln('Введите элементы массива b(k)');
FOR i := 1 TO m do
begin
readln(b[i]);
end;
FOR i := 1 TO m do
begin
FOR l := 1 TO k do
begin
IF a[i] = b[l] THEN
begin
c := c + 1; ab[c] := a[l];
end;
end;
end;
clrscr;
writeln('Массив образованный из одинаковых элементов');
FOR i := 1 TO c do
begin
writeln (ab[i]);
end;
end.
{78. Поменять местами макс и мин элементы}
uses crt;
var i,size,max,min,num,num1:integer;
a:array[1..10000] of integer;
begin
clrscr;
writeln('Bведите размер массива');
readln(size);
FOR i := 1 TO size do
begin
clrscr;
writeln('Введите элементы массива');
readln(a[i]);
end;
max := a[1];
min := a[1];
clrscr;
writeln('Введенный массив');
FOR i := 1 TO size do
begin
writeln(a[i]);
IF a[i] > max THEN
begin
num := i; max := a[i];
end;
end;
FOR i := 1 TO size do
begin
IF a[i] < min THEN
begin
num1 := i; min := a[i];
end;
end;
a[num1 + 1] := max;
a[num] := min;
writeln('Массив, где max и min поменяли местами');
FOR i := 1 TO size do
begin
writeln(a[i]);
end;
end.
{79. Поменять местами макс и последний элемент }
uses crt;
var i,max,num,size:integer;
a:array[1..10000] of integer;
begin;
clrscr;
writeln('Введите размер массива');
readln(size);
FOR i := 1 TO size do
begin
clrscr;
writeln('Введите элементы массива');
readln(a[i])
end;
max := a[1];
clrscr;
writeln('Введенный массив');
FOR i := 1 TO size do
begin
writeln(a[i]);
IF a[i] > max THEN
begin
num := i; max := a[i];
end;
end;
a[num] := a[size];
a[size] := max;
writeln('Массив, где max и последний элемент поменяли местами');
FOR i := 1 TO size do
begin
writeln (a[i]);
end;
end.
{80 Сколько раз во втором слове встречается первая буква первого слова}
uses crt;
var x,x1,i,c,dl,ch,n:integer;
word,word1,k:string;
label 1;
begin
clrscr;
writeln('Введите первое слово');
readln(word);
writeln('Введите второе слово');
readln(word1);
dl:=length(word1);
k:=copy(word,1,1);
ch:=0;
n:=pos(k,word1);
1:if n>0 then
begin
ch:=ch+1;
Delete(word1,1,n);
dl:=length(word1);
if dl>0 then
begin
n:=pos(k,word1);
goto 1;
end
end;
writeln('Во втором слове буква ',k,' встречается ',ch,' раз(а)');
end.
{81. }
uses crt;
var n:integer;
begin
clrscr;
writeln('Введите 0 или 2');
readln(n);
if n=0 then
begin
writeln('БУКВА И ЗВУК');
end
else writeln('БУКВА И БАБОЧКА');
end.
{82.}
uses crt;
var st0,st1,st2,st3,st4,st5,st6,st7,st8,st9,ST10,ST11,st12,d:string;
begin
clrscr;
writeln('БАЛКОН');
writeln(' ');
st0:='БАЛКОН';
st1:=copy(st0,3,1);
st2:=copy(st0,5,1);
st3:=copy(st0,1,1);
d:=st1+st2+st3;
writeln(d);
st4:=copy(st0,4,1);
st5:=copy(st0,3,1);
st6:=copy(st0,2,1);
st7:=copy(st0,6,1);
d:=st4+st5+st6+st7;
writeln(d);
st8:=copy(st0,4,1);
st9:=copy(st0,5,1);
st10:=copy(st0,3,1);
st11:=copy(st0,1,1);
st12:=copy(st0,2,1);
d:=st8+st9+st10+st11+st12;
writeln(d);
end.
{83}
uses crt;
var st0,st1,st2,st3,st4,st5,st6,st7,st8,st9,ST10,ST11,st12,d:string;
begin
clrscr;
writeln('ШУТКА');
writeln(' ');
st0:='ШУТКА';
st1:=copy(st0,1,1);
st2:=copy(st0,2,1);
st3:=copy(st0,3,1);
d:=st1+st2+st3;
writeln(d);
st4:=copy(st0,2,1);
st5:=copy(st0,3,1);
st6:=copy(st0,4,1);
st7:=copy(st0,5,1);
d:=st4+st5+st6+st7;
writeln(d);
st8:=copy(st0,3,1);
st9:=copy(st0,2,1);
st10:=copy(st0,1,1);
st11:=copy(st0,4,1);
st12:=copy(st0,5,1);
d:=st8+st9+st10+st11+st12;
writeln(d);
end.
{84. Составить программу для подсчета числа букв А Б В в предложении}
uses crt;
var a,b,c,x,y:integer;
dl,ch,n,cha,chb,chv:integer;
text,text1:string;
aa,bb,vv,cc:char;
label 1,2,3;
begin
clrscr;
writeln('какие символы будем считать(a,b,c-через Enter)');
readln(aa);
readln(bb);
readln(vv);
writeln('Введите текст');
readln(text);
dl:=length(text);
text1:=text;
cha:=0;
chb:=0;
chv:=0;
n:=pos(aa,text);
1:if n>0 then
begin
cha:=cha+1;
Delete(text1,1,n);
dl:=length(text1);
if dl>0 then
begin
n:=pos(aa,text1);
goto 1;
end
end;
text1:=text;
n:=pos(bb,text1);
2:if n>0 then
begin
chb:=chb+1;
Delete(text1,1,n);
dl:=length(text1);
if dl>0 then
begin
n:=pos(bb,text1);
goto 2;
end
end;
text1:=text;
n:=pos(vv,text1);
3:if n>0 then
begin
chv:=chv+1;
Delete(text1,1,n);
dl:=length(text1);
if dl>0 then
begin
n:=pos(vv,text1);
goto 3;
end
end;
writeln('В предложениии ',aa,' встречается ',cha,' раз(а) ');
writeln('В предложениии ',bb,' встречается ',chb,' раз(а) ');
writeln('В предложениии ',vv,' встречается ',chv,' раз(а) ');
end.
{85 Поставить буквы в алфавитном порядке}
uses crt;
var dl,ch,n,i,k:integer;
text,alf,c,sim,buk:string;
d:array[1..32] of integer;
label 1;
begin
clrscr;
writeln('Введите текст');
readln(text);
dl:=length(text);
alf:='абвгдежзийклмнопрстуфхцчшщъыьэюя';
clrscr;
for k:=1 to 32 do
d[k]:=0;
for i:=1 to dl do
begin
sim:=copy(text,i,1);
for k:=1 to 32 do
begin
buk:=copy(alf,k,1);
if sim=buk then
d[k]:=d[k]+1;
end;
end;
for i:=1 to 32 do
begin
if d[i]<>0 then
begin
gotoxy(i*2+5,15);
writeln(alf[i]);
gotoxy(i*2+5,18);
writeln(d[i]);
end
end;
gotoxy(5,13);
writeln(text);
end.
{86. Найти в тексте подстроку "авс"}
uses crt;
var m:string[79];
k:string[79];
i:integer;
position:byte;
procedure Search;
begin
Position:=pos(k,m);
IF position<>0 then sound(100);delay(10);nosound;
end;
begin;
textbackground(0);
clrscr;
writeln('Введите предложение');
readln(m);
writeln('Какие символы следует найти');
readln(k);
clrscr;
search;
writeln(m);
textbackground(9);gotoxy(pos(k,m),1);writeln(k);
textbackground(0);
writeln('Фрагмент"',k,'"был найден начинвя с позиции',position:3)
end.
{87. Удалить из текста все буквы "о"}
uses crt;
var word1,word: String;
dl,n:integer;
label 1;
begin
clrscr;
writeln('Введите текст');
readln(word1);
writeln('Введите букву, которую надо удалить');
readln(word);
dl:=length(word1);
n:=pos(word,word1);
1:if n>0 then
begin
Delete(word1,n,1);
insert(' ',word1,n);
dl:=length(word1);
if dl>0 then
begin
n:=pos(word,word1);
goto 1;
end
end;
writeln(word1);
end.
{88. Составьте алгоритм и программу выбирающую из трех чисел то которое лежит между двумя другими }
uses crt;
var a,b,c,low,high,mid:integer;
begin;
clrscr;
writeln('Введите три числа(после каждрого ENTER)');
readln(a);
readln(b);
readln(c);
low:=a;
high:=a;
IF b < low THEN low:=b;
IF c < low THEN low:= c;
IF b > high THEN high := b;
IF c > high THEN high := c;
IF low=a THEN begin
if high=b then mid:=c;
if high=c then mid:=b;
end;
IF low=b THEN begin
if high=c then mid:=a;
if high=a then mid:=c;
end;
IF low=c THEN begin
if high=a then mid:=b;
if high=b then mid:=a;
end;
writeln('Между ',low,' и ', high,' лежит ', mid);
end.
{89. Сколько слов в тексте}
uses crt;
var dl,ch,n:integer;
text,text1:string;
label 1;
begin
clrscr;
writeln('Введите текст');
readln(text);
ch:=1;
dl:=length(text);
n:=pos(' ',text);
1:if n>0 then
begin
ch:=ch+1;
Delete(text,1,n);
dl:=length(text);
if dl>0 then
begin
n:=pos(' ',text);
goto 1;
end
end;
writeln('В предложениии ',ch,' слов(о) ');
end.
{90. Удалить из текста все цифры}
uses crt;
var dl,ch,n,i:integer;
text,text1,c:string;
label 1;
begin
clrscr;
writeln('Введите текст');
readln(text);
dl:=length(text);
text1:='0123456789';
for i:=1 to 10 do
begin
c:=copy(text1,i,1);
n:=pos(c,text);
1:if n>0 then
begin
Delete(text,n,1);
insert(' ',text,n);
dl:=length(text);
if dl>0 then
begin
n:=pos(c,text);
goto 1;
end
end;
end;
writeln(text);
end.
{91. Вставить вместо пробелов точки}
uses crt;
var dl,ch,n:integer;
text,text1:string;
label 1;
begin
clrscr;
writeln('Введите текст');
readln(text);
dl:=length(text);
n:=pos(' ',text);
1:if n>0 then
begin
Delete(text,n,1);
insert('.',text,n);
dl:=length(text);
if dl>0 then
begin
n:=pos(' ',text);
goto 1;
end
end;
writeln(text);
end.
{92 }
uses crt;
var dl,ch,n:integer;
text,text1,c:string;
label 1;
begin
clrscr;
writeln('Введите текст');
readln(text);
writeln('Введите для поиска первую букву слова');
readln(text1);
dl:=length(text);
ch:=0;
c:=copy(text,1,1);
if c=text1 then ch:=ch+1;
n:=pos(' ',text);
1:if n>0 then
begin
c:=copy(text,n+1,1);
if c=text1 then ch:=ch+1;
Delete(text,1,n);
dl:=length(text);
if dl>0 then
begin
n:=pos(' ',text);
goto 1;
end
end;
writeln(ch,' раз(а) слова начинаются на букву ',text1);
end.
{93. Напечатать фамилию победителя}
uses crt;
var i,size,max:integer;
nam:array[1..10] of string;
bal:array[1..10] of integer;
begin
clrscr;
writeln('Сколько участников олимпиады');
readln(size);
writeln('Максималтный балл');
readln(max);
FOR i := 1 TO size do
begin
clrscr;
writeln('Фамилия участника');
readln(nam[i]);
writeln('Его балл');
readln(bal[i])
end;
clrscr;
writeln('Участники');
FOR i := 1 TO size do
begin
writeln(nam[i],' Балл ',bal[i]);
end;
FOR i := 1 TO size do
begin
IF bal[i] = max THEN writeln(nam[i], ' победитель, баллов-',max);
end;
end.
{94. Напечатать фамилию чемпиона и его результат}
uses crt;
var i,max,size:integer;
winer:string;
nam:array[1..10] of string;
bal:array[1..10] of integer;
begin
clrscr;
writeln('Введите кол-во участников соревнования');
readln(size);
FOR i := 1 TO size do
begin
clrscr;
writeln('Фамилия участника');
readln(nam[i]);
writeln('Его балл');
readln(bal[i]);
end;
max := bal[1];
writeln('Участники');
FOR i := 1 TO size do
begin
writeln(nam[i],' Балл ',bal[i]);
end;
FOR i := 1 TO size do
begin
IF bal[i] > max THEN
begin
max := bal[i]; winer:= nam[i];
end;
end;
writeln(winer, ' победитель. Баллов ', max);
end.
{95. Посчитать общую стоимость товара}
uses crt;
var numi,pricei,numii,priceii,numiii,priceiii,numiv,priceiv:integer;
begin
clrscr;
writeln('Введите количество и стоимость товаров I сорта кол-во и стоимость через Enter');
readln(numi);
readln(pricei);
clrscr;
writeln('Введите количество и стоимость товаров II сорта кол-во и стоимость через Enter');
readln(numii);
readln(priceii);
clrscr;
writeln('Введите количество и стоимость товаров III сорта кол-во и стоимость через Enter');
readln(numiii);
readln(priceiii);
clrscr;
writeln('Введите количество и стоимость товаров IV сорта кол-во и стоимость через Enter');
readln(numiv);
readln(priceiv);
clrscr;
writeln('сорт ', 'кол-во ', 'стоимость ед. ', 'общ.стоимость');
writeln('I ', numi, pricei:12, numi * pricei:24);
writeln('II ', numii, priceii:12, numii * priceii:24);
writeln('III ', numiii, priceiii:12, numiii * priceiii:24);
writeln('IV ', numiv, priceiv:12, numiv * priceiv:24);
writeln('Стоимость всех товаров ', numi * pricei + numii * priceii + numiii * priceiii + numiv * priceiv);
end.
{96. Занести в таблицу оценки учеников класса за год по математике и информатике}
uses crt;
var i,k,size:integer;
nam:array[1..20] of string;
inf:array[1..20] of integer;
mat:array[1..20] of integer;
begin
clrscr;
writeln('Сколько учеников в классе');
readln(size);
FOR i := 1 TO size do
begin
clrscr;
writeln('Введите фамилию ученика, оценку по мат., оценку по инф.');
readln(nam[i]);
readln(inf[i]);
readln(mat[i]);
end;
clrscr;
writeln('Неуспевающие по информатике');
FOR i := 1 TO size do
begin
IF inf[i] <= 2 THEN writeln(nam[i]);
end;
writeln('Неуспевающие по математике');
FOR i := 1 TO size do
begin
IF mat[i] <= 2 THEN writeln(nam[i]);
end;
writeln('Отличники');
FOR i := 1 TO size do
begin
IF (mat[i] = 5) AND (inf[i] = 5) THEN writeln(nam[i]);
end;
writeln('Общее число неуспевающих');
FOR i := 1 TO size do
begin
IF (mat[i] = 2) OR (inf[i] = 2) THEN k := k + 1;
end;
writeln(k);
end.
{97. Сформировать список учащихся сдавших экзамен на отлично}
uses crt;
var i,size:integer;
nam:array[1..10] of string;
tick:array[1..10] of integer;
mark:array[1..10] of integer;
markp:array[1..10] of string;
begin
clrscr;
writeln('Введите кол-во учеников в классе');
readln(size);
FOR i := 1 TO size do
begin
clrscr;
writeln('Введите фамилию ученика, билет, оценку цифрой, прописью (через ENTER)');
readln(nam[i]);
readln(tick[i]);
readln(mark[i]);
readln(markp[i]);
end;
clrscr;
FOR i := 1 TO size do
begin
writeln(nam[i],' Билет - ',tick[i],' Балл -',mark[i]);
end;
FOR i := 1 TO size do
begin
IF (mark[i] = 5) AND (markp[i] = 'пять') THEN writeln(nam[i], ' билет № ', tick[i], mark[i]:2, ' (отлично)');
end;
end.
{98. Выбрать самого высоког ученика по данным из таблицы}
uses crt;
var i,max,rr,vv,size:integer;
vnam1,vnam2:string;
nam1:array[1..10] of string;
nam2:array[1..10] of string;
r:array[1..10] of integer;
v:array[1..10] of integer;
begin
clrscr;
writeln('Введите кол-во учеников в классе');
readln(size);
FOR i := 1 TO size do
begin
clrscr;
writeln('Введите фамилию ученика, имя, рост, вес через Enter');
readln(nam1[i]);
readln(nam2[i]);
readln(r[i]);
readln(v[i]);
end;
clrscr;
max := r[1];
FOR i := 1 TO size do
begin
IF r[i] > max THEN
begin
vnam1 := nam1[i];
vnam2 := nam2[i];
rr := r[i];
vv := v[i];
max:=r[i];
end;
end;
clrscr;
writeln('самый высокий ученик');
writeln('Фамилия', 'Имя':10, 'Рост':10, 'Вес':10);
writeln(vnam1, vnam2:12, rr:12, vv:12);
end.
Предварительный просмотр:
Билет №1
1. Понятие информации. Виды информации. Роль информации в живой природе и в жизни людей. Язык, как способ представления информации: естественные и формальные языки. Основные информационные процессы: хранение, передача и обработка информации.
2. Построение алгоритма (основные алгоритмические структуры) и его реализация в среде учебного исполнителя. Демонстрация полученного алгоритма в среде учебного исполнителя.
Билет №2
1. Измерение информации: содержательный и алфавитный подходы. Единицы измерения информации. 2. Создание и редактирование текстового документа (исправление ошибок, удаление или вставка текстовых фрагментов), в том числе использование элементов, форматирования текста (установка паpaмeтpов шрифта, абзаца, внедрение заданных объектов в текст).
Билет №3
1. Дискретное представление информации: двоичные числа; двоичное кодирование текста; в памяти компьютера. Информационный объем текста.
2. Создание и обработка графических изображений средствами графического редактора. Ввод изображения через сканер или с цифрового фотоаппарата. Простейшая обработка цифрового изображения.
Билет №4
1. Дискретное представление информации: копирование цветного изображения в компьютере (растровый подход). Представление и обработка звука и видеоизображения. Понятие мультимедиа.
2. Работа с файловой системой, с графическим интерфейсом (выполнение стандартных операций с файлами: создание, копирование, переименование, удаление). Организация индивидуального информационного пространства (настройка элементов рабочего стола, проверка на вирусы, использование архиватора).
Билет №5
1. Процесс передачи информации, источник и приемник информации, канал передачи информации Скорость передачи информации.
2. Создание мультимедийной презентации на основе шаблонов. Выбор типа разметки слайда. Применение шаблона оформления, цветовых схем и эффектов анимации; Показ презентации с использованием автоматической смены слайдов.
Билет № 6
1. Понятие алгоритма. Исполнитель алгоритма. Система команд исполнителя (на примере учебного исполнителя). Свойства алгоритма. Способы записи алгоритмов; блок – схемы.
2. Создание базы данных. Определение структуры базы данных: количество и типы полей, заполнение таблиц (или использование готовых). Организация поиска информации в базах данных. Создание запросов разной сложности.
Билет № 7
1. Основные алгоритмические структуры: следование, ветвление, цикл; изображение на блок-схеме. Разбиение задач на подзадачи. Вспомогательные алгоритмы.
2. Работа с электронной таблицей. Создание таблицы в соответствии с условием задачи, использование функций. Построение диаграмм и графиков по табличным данным.
Билет № 8
1. Величины: константы, переменные, типы вёличин. Присваивание, ввод и вывод величин. Линейные алгоритмы работы с величинами.
2. Поиск информации в Интернeте с применением языка запросов.
Билет № 9
1. Логические величины, операции, выражения. Логические выражения в качестве условий в ветвящихся и циклических aлгoритмах.
2. Форматирование текстового документа. Установка параметров страницы; вставка номеров страниц, колонтитулов, гиперссылок, изменение параметров шрифта и абзаца.
Билет № 10
1. Представление о программировании: язык программирования (на примере одного из языков высокого уровня); примеры несложных программ с линейной, ветвящейся и циклической структурой.
2. Работа с архиваторами и антивирусными программами. Создание многотомного архива, использование антивирусных программ.
Билет № 11
1.Основные компоненты компьютера, их функциональное назначение и принципы работы. Программный принцип работы компьютера.
2. Построение алгоритма для обработки величин с реализацией на языке программирования (ветвление, цикл). Отладка программы и получение результатов.
Билет №12
1. Программное обеспечение компьютера, состав и структура. Назначение операционной системы. Командное взаимодействие пользователя с компьютером. Графический пользовательский интерфейс.
2. Создание мультимедийной презентации на основе шаблонов. Выбор типа разметки слайда, применение шаблона оформления, цветовых схем и эффектов анимации. Демонстрация слайдов с использованием управляющих кнопок.
Билет №13
1. Понятие файла и файловой системы организации данных (папка, иерархическая структура, имя файла, тип файла, параметры файла). Основные операции с файлами и папками, выполняемые пользователем. Понятие об архивировании и защите от вирусов.
2. Организация поиска информации в готовой базе данных с применением составного логического выражения.
Билет №14.
1. Информационные ресурсы общества. Основы информационной безопасности, этики и права.
2. Работа с электронной таблицей. Проведение вычислительного эксперимента в среде - электронной, таблицы. Решение задачи, с использованием электронной таблицы для изменяющихся начальных данных.
Билет №15
1. Технологии работы с текстовыми документами. Текстовые редакторы и процессоры: назначение и возможности. Основные структурные элементы текстового документа. Шрифты, стили, форматы. Основные приемы редактирования документа. Встраиваемые объекты. Понятие гипертекста.
2. Построение алгоритма и реализация на изучаемом языке программирования или в сpeдe учебного исполнителя. Демонстрация полученного алгоритма в среде учебного исполнителя или отладка программы и получение результатов.
Билет№16
1. Технологии работы с графической информацией. Растровая и векторная графика. Аппаратные средства ввода и вывода графических изображений. Прикладные программы работы с графикой. Графический редактор. Основные инструменты и режимы работы.
2. Решение задачи по теме «Системы счисления» на изучаемом языке программирования или с использованием стандартной программы «Калькулятор».
Билет № 17
1. Табличные базы данных (БД): основные понятия (поле, запись, первичный ключ записи); типы данных. Системы управления базами данных и принципы работы с ними. Поиск, удаление и сортировка данных в БД. Условия поиска (логические выражения); порядок и ключи сортировки.
2. Построение алгоритма для обработки величин с реализацией на языке программирования. (ветвление, цикл, линейный массив или вспомогательные алгоритмы). Отладка программы, получение результатов.
Билет №18.
1. Технология обработки информации в электронных таблицах (ЭТ). Структура электронной таблицы. Типы, данных: числа; формулы, текст. Правила записи формул. Основные встроенные функции. Абсолютные и относительные ссылки. Графическое представление данных.
2. Построение алгоритма для управления учебным исполнителем (основные алгоритмические структуры). Демонстрация полученного алгоритма в среде учебного исполнителя.
Билет №19
1.Основные принципы организации и функционирования компьютерных сетей. Интернет. Информационные ресурсы и сервисы компьютерных сетей: Всемирная паутина, файловые архивы, интерактивное общение. Назначение и возможности электронной почты. Поиск информации в Интернете.
2. Обработка цифрового изображения в графическом редакторе. Например, устранение дефектов, ретуширование и тоновая коррекция фотографии.
Билет №20
1. Понятие модели. Информационная модель. Виды информационных моделей (на примерах). Реализация информационных моделей на компьютере. Пример применения электронной таблицы в качестве инструмента математического моделирования.
2. Построение алгоритма для обработки величин с реализацией на языке программирования (линейный массив или вспомогательные алгоритмы).