Предмет: Информатика, автор: Аноним

Информатики!! помогите ПРОШУ СРОЧНО НУЖНО) ПОСЛЕДНЕЕ ЗАДАНИЕ ДЛЯ ЭКЗАМЕНА ВЫПОЛНИТЬ В ПАСКАЛЕ


3. Вычислить f(x), если (используя составные условия)
f(x) = x, если -2<=x <2
f(x) = 4, если x=>2, x<-2


дмитрий2221: f[x]-просто переменная в массиве?

Ответы

Автор ответа: flower454
2

var
2 x:real;
3  rez:real;
4 begin  
5read(x);//ввод
6 if(x<0) then rez:=0;//первый случай
7 if(x<=1)and(x>=0) then rez:=x;//второй случай  
8 if(x>1) then rez:=2;//третий
9 writeln(rez);//вывод результата
10 end.

Вроде бы правильно,но это неточно 
Автор ответа: дмитрий2221
2
Как понял я, то тебе нужно что то такое


var f:array[1..10000]of longint;
x:longint;
begin
writeln('Введите x');
readln(x);
if (x>=2) or (x<=-2) then
f[x]:=x
else f[x]:=4;
writeln('f[x] = ',f[x]);
end.

дмитрий2221: Код изменён
Похожие вопросы
Предмет: Информатика, автор: tarabanovarseniy1eat
Домашнее задание
Петя успевает по математике лучше всех в классе, поэтому учитель задал ему сложное домашнее задание, в котором нужно в заданном наборе целых чисел найти сумму всех положительных элементов, затем найти где в заданной последовательности находятся максимальный и минимальный элемент и вычислить произведение чисел, расположенных в этой последовательности между ними. Так же известно, что минимальный и максимальный элемент встречаются в заданном множестве чисел только один раз и не являются соседними. Поскольку задач такого рода учитель дал Пете около ста, то Петя как сильный программист смог написать программу, которая по заданному набору чисел самостоятельно находит решение. А Вам слабо?

Входные данные

В первой строке записано единственное число N (N≤15) — количество элементов массива. Вторая строка содержит N целых чисел, представляющих заданный массив. Все элементы массива разделены пробелом. Каждое из чисел во входном файле, в том числе и N, не превышает 20 по абсолютной величине.

Выходные данные

В единственную строку нужно вывести два числа, разделенных пробелом: сумму положительных элементов и произведение чисел, расположенных между минимальным и максимальным элементами. Значения суммы и произведения не превышают по модулю 106.
ПОМОГИТЕ ПЖ ПИШЕТ ЧТО ПРОГРАММА ВЫДАЁТ НЕПРАВЕЛЬНЫЙ ОТВЕТ
#include

#include

using namespace std;

int main()

{

int s = 0, l = 1, n;

cin >> n;

vector v(n);

for (int i = 0; i < n; ++i)

{

cin >> v[i];

if (v[i] > 0)

{

s += v[i];

}

}

int imn = 0, imx = 0;

for (int i = 0; i < n; ++i)

{

if (v[i] < v[imn])

{

imn = i;

}

if (v[i] > v[imx])

{

imx = i;

}

}

if (imn > imx)

{

swap(v[imn], v[imx]);

}

for (int i = imn; i < imx; i++)

{

if (v[i] > 0)

{

l *= v[i];

}

}

cout << s << " " << l;

return 0;

}
Предмет: Алгебра, автор: KrOSs7