Консультация # 197217: Здравствуйте, уважаемые эксперты! 14Прошу вас ответить на следующий вопрос: Напишите программу, с использованием пользовательской функции, которая вычисляет u = min(a, b), v = min(ab, a+b), min(u+v2, 3.14), где a и b действительные числа. pascal ...Консультация # 197245:
Здравствуйте! Прошу помощи в следующем вопросе: Написать модуль, который формирует матрицу типа 0001 0010 0100 1000 (побочная диагональ) Pascal ...Консультация # 197246: Здравствуйте! Прошу помощи в следующем вопросе: Поменять местами последний элемент массива с первым минимальным элементом, а затем поделить на заданное число все элементы, начиная с номера, где был найденный минимальны
й элемент, до последнего элемента массива. Pascal ...
Здравствуйте, уважаемые эксперты! 14Прошу вас ответить на следующий вопрос:
Напишите программу, с использованием пользовательской функции, которая вычисляет u = min(a, b), v = min(ab, a+b), min(u+v2, 3.14), где a и b действительные числа.
type
f=function(a:real):real;
{$F+}
function f2(a:real):real;
begin
f2:=a*a
end;
function fe(a:real):real;
begin
fe:=exp(a)
end;
function fs(a:real):real;
begin
fs:=(exp(a)-exp(a))/2
end;
{$F-}
function fmin(a,b:real):real;
begin
if a>b then fmin:=b
else fmin:=a
end;
var
a:integer;
b:f;
x,y,z:real;
begin
write('Enter X:=');readln(x);
write('Enter Y:=');readln(y);
write('Enter Z:=');readln(z);
repeat
write('select function:',#10,#13,'1-x^2',#10,#13,'2-sh(x)',#10,#13,'3-e^x');
readln(a);
until a in[1..3];
case a of
1:b:=f2;
2:b:=fs;
3:b:=fe;
end;
if fmin(b(x),y)<>0then writeln('Result:=',fmin(b(x)+y,y-z)/fmin(b(x),y))
else writeln('Result - undefined')
end.
unit matrix;
interface
type mtr=array[1..20,1..20] of integer;
procedure form_mtr(var a:mtr;var n:integer);
implementation
procedure form_mtr(var a:mtr;var n:integer);
var i,j:integer;
begin
repeat
write('Введите размер матрицы от 2 до 20 n=');
readln(n);
until n in [2..20];
for i:=1 to n do
begin
for j:=1 to n do
begin
if j=n-i+1 then a[i,j]:=1
else a[i,j]:=0;
write(a[i,j]:2);
end;
writeln;
end;
end;
end.
Поменять местами последний элемент массива с первым минимальным элементом, а затем поделить на заданное число все элементы, начиная с номера, где был найденный минимальный элемент, до последнего элемента массива.
var a:array[1..100] of real;
n,i,imn:integer;
x:real;
begin
repeat
write('Введите размер массива от 10 до 100 n=');
readln(n);
until n in [10..100];
randomize;
writeln('Исходный массив');
for i:=1 to n do
begin
a[i]:=1+10*random;
write(a[i]:5:1);
if i=1 then imn:=1
else if a[i]<a[imn] then imn:=i;
end;
writeln;
writeln('Первый минимальный элемент=',a[imn]:0:1,' его индекс=',imn);
x:=a[imn];
a[imn]:=a[n];
a[n]:=x;
writeln('Обмен первого минимального и последнего элементов');
for i:=1 to n do
write(a[i]:5:1);
writeln;
write('Введите число для деления x=');
readln(x);
writeln('Измененный массив');
for i:=1 to n do
begin
if i>=imn then a[i]:=a[i]/x;
write(a[i]:5:1);
end;
end.
Консультировал: puporev (Профессионал)
Дата отправки: 27.11.2019, 15:39
Команда портала RFPRO.RU благодарит Вас за то, что Вы пользуетесь нашими услугами. Вы только что прочли очередной выпуск рассылки. Мы старались.
Пожалуйста, оцените его. Если совет помог Вам, если Вам понравился ответ, Вы можете поблагодарить автора -
для этого в каждом ответе есть специальные ссылки. Вы можете оставить отзыв о работе портале. Нам очень важно знать Ваше мнение.
Вы можете поближе познакомиться с жизнью портала, посетив наш форум, почитав журнал,
который издают наши эксперты. Если у Вас есть желание помочь людям, поделиться своими знаниями, Вы можете зарегистрироваться экспертом.
Заходите - у нас интересно!