М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
301222
301222
11.10.2022 17:10 •  Информатика

Дан массив, состоящий из целых чисел. Напишите программу, которая подсчитывает количество положительных чисел среди элементов массива. Формат ввода
Сначала задано число N — количество элементов в массиве (1<=N<=10000). Далее через пробел записаны N чисел — элементы массива. Массив состоит из целых чисел.

Формат вывода
Необходимо единственное число - количество положительных элементов в массиве.
Напишите на языке КУМИР.
Пример
Ввод
5
1 2 3 -1 -4
Вывод
3

👇
Открыть все ответы
Ответ:
аня2931
аня2931
11.10.2022
//Dev-C++ 5.11 (C)

#include <stdio.h>
int main()
 {FILE *inp,*outp,*para;
 int n=1,i;
 char c,ckar;
 inp=fopen("input.txt","rt");
 para=fopen("input.txt","rt");
 outp=fopen("output.txt","wt");
 c=fgetc(inp);
 while (c!=EOF)
  {if (c=='\n')
   {if(n>6) for(i=0;i<n;i++)
     {ckar=fgetc(para);
     fputc(ckar,outp);}
   else
    for(i=0;i<n;i++)
     ckar=fgetc(para);
   n=0;}
  c=fgetc(inp);
  n++;}
 if(n>6)
    for(i=0;i<n-1;i++)
     {ckar=fgetc(para);
     fputc(ckar,outp);}
   else
    for(i=0;i<n-1;i++)
     ckar=fgetc(para);
 return 0;}
4,7(23 оценок)
Ответ:
arsenboosss757
arsenboosss757
11.10.2022

Объяснение:

Немного математики:

Вся заштрихованная область представляет собой решение некоторой системы уравнений. Например, I четверть координатной плоскости задается x > 0, y > 0. Этот случай относится к тому, что область принадлежит той самой I четверти.

Теперь у нас есть два варианта решения: проверить принадлежности x к отрезку (0; 7), а затем разбить на два условия: если точка принадлежит отрезку (0;5], то координата y должна принадлежать (0;5). Иначе если координата икс в отрезке [5;7), то координата y должна быть меньше некоторой линейной функции, проходящей через точки (5;5) и (7;0)

Второй вариант (он будет оптимальнее): сначала проверить принадлежность координаты y в отрезке (0;5). Если это так, то проверить выполнение условия 0 < x < f(y), где f(y) - это некоторая линейная функция.

Давайте найдем эту линейную функцию.

Если линейная функция задается уравнением y = kx + b, то справедлива система:

\left \{ {{5k +b =5} \atop {7k + b=0}} \right.

От второго отнимаем первое уравнение, получаем 2k = -5, или k = -2.5, а b будет при этом равно 17,5

Теперь найдем обратную функцию (решать будем по второму варианту)

y = -2.5x + 17.5\\2y = -5x + 35\\35 - 2y = 5x\\x = 7 - 0.4y

Теперь, точка считается внутри фигуры, если выполняется:

0 < y < 5

0 < x < 7 - 0.4y

Сама программа:

program task;

var x, y: real;

begin

writeln('Введите координаты точки х и y: ');

readln(x, y);

if ((y > 0) and (y < 5)) then begin

if ((x > 0) and (x < 7 - 0.4*y)) then writeln('Попадает')

else writeln('Не попадает')

end;

end.

4,7(25 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ