Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Задача 6
- var
- A: array[1..255] of integer;
- N, K, L, i: byte;
- Arifm: real;
- begin
- writeln(' Массив какого размера вы хотите задать? ');
- write(' N = ');
- readln(N);
- writeln(' Введите ', N, ' элементов массива(через пробел):');
- write(' ');
- for i := 1 to N do
- read(a[i]); //Вводим элементы массива
- write(' Введите(через пробел) два номера K <= L,');
- writeln(' которые не меньше 2 и не больше ', N, ':');
- write(' ');
- read(K, L); //Вводим двам номера(через пробел).
- {Результат: }
- write(' Среднее арифметическое суммы всех элементов');
- write(' массива, кроме элементов с номерами от ');
- writeln(K, ' до ', L, ' включительно, равна:');
- {Находим сумму всех чисел массива от 1-го до
- (K-1)-го номера включительно:}
- for i := 1 to K - 1 do
- Arifm := Arifm + a[i];
- {Находим сумму всех чисел массива от
- (L+1)-го до N-го номера включительно:}
- for i := L + 1 to N do
- Arifm := Arifm + a[i];
- {N + K - L - 1 - количество чисел в
- диапазонах [1, K - 1]U[L + 1, N].}
- {Делим сумму элементов массива на их
- количество(среднее арифметическое): }
- Arifm := Arifm / (N + K - L - 1);
- write(' Arifm = ', Arifm) //Выводим результат.
- end.
- Задача 7
- uses crt;
- var a:array[1..50,1..50] of integer;
- m,n,i,j,imn,imx:byte;
- mn,mx,x:integer;
- begin
- clrscr;
- randomize;
- write('Количество строк m=');
- readln(m);
- write('Количество столбцов n=');
- readln(n);
- for i:=1 to m do
- for j:=1 to n do
- a[i,j]:=random(20);{заполняем матрицу элементами}
- mn:=a[1,1];mx:=a[1,1];
- imn:=1;imx:=1;
- for i:=1 to m do
- for j:=1 to n do
- begin
- if a[i,j]<mn then
- begin
- mn:=a[i,j];{находим минимальный}
- imn:=i;{строку с ним}
- end;
- if a[i,j]>mx then
- begin
- mx:=a[i,j];{находим максимальный}
- imx:=i;{строку с ним}
- end;
- end;
- writeln('Строка с минимальным элементом=',imn,' мин=',mn);
- writeln('Строка с максимальным элементом=',imx,' макс=',mx);
- if imn=imx then{если мин и макс в одной строке}
- begin
- writeln('Минимальный и максимальный элемент в одной строке!');
- writeln('Матрица:');
- for i:=1 to m do
- begin
- for j:=1 to n do
- if i=imn then
- begin
- textcolor(12);{эту строку выделим красным цветом}
- write(a[i,j]:4);
- end
- else
- begin
- textcolor(15);{остальные по умолчанию, обычно белый}
- write(a[i,j]:4);
- end;
- writeln;
- end;
- readln;
- exit;{выходим из программы, т.к. менять нечего}
- end;
- writeln('Исходная матрица:');{если разные-продолжаем программу, выводим исходную матрицу}
- for i:=1 to m do
- begin
- for j:=1 to n do
- if i=imn then
- begin
- textcolor(14);{строку с мин выводим желтым цветом}
- write(a[i,j]:4);
- end
- else if i=imx then
- begin
- textcolor(12);{с макс-красным}
- write(a[i,j]:4);
- end
- else
- begin
- textcolor(15);{остальные белым}
- write(a[i,j]:4);
- end;
- writeln;
- end;
- for j:=1 to n do{обмениваем элементы строки с мин с элементами строки с макс}
- begin
- x:=a[imn,j];
- a[imn,j]:=a[imx,j];
- a[imx,j]:=x;
- end;
- textcolor(15);
- writeln('Перестановка строк:');
- for i:=1 to m do
- begin
- for j:=1 to n do
- if i=imx then
- begin
- textcolor(14);{сейчас строку с номером макс-желтым}
- write(a[i,j]:4);
- end
- else if i=imn then
- begin
- textcolor(12);{а строку с мин-красным}
- write(a[i,j]:4);
- end
- else
- begin
- textcolor(15);
- write(a[i,j]:4);
- end;
- writeln;
- end;
- readln
- end.
- Задача 8
- var
- S:String;
- i,Num,NumA:integer;
- begin
- Write('S: ');
- Readln(S);
- i:=1;
- Num:=0;
- NumA:=0;
- While (i<=Length(S)) do
- begin
- if (S[i]=' ') then
- begin
- if NumA>0 then inc(num);
- NumA:=0;
- end;
- if S[i]=chr(128) then inc(NumA); //Если кодировка в консоли и в IDE совпадают, условие можно заменить на S[i]='А'
- inc(i);
- end;
- Writeln(Num);
- end.
- Задача 10
- var
- mnoz, mn, znaki: set of char;
- s: string;
- i, k: integer;
- p: char;
- begin
- //ввод
- write('Напишите предложение: '); readln(s);
- mnoz := ['a'..'z'];
- znaki := [',', '.', '!', '?', '-'];
- mn := [];
- //подсчет
- for i := 1 to length(s) do //до конца строки
- begin
- if s[i] in mnoz then mn := mn + [s[i]] else //буквы
- if s[i] in znaki then k := k + 1; //знаки
- end;
- //вывод
- writeln('количество знаков =', k);
- writeln('множество букв : ', mn);
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement