Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 10.09.2014
Сообщений: 15

Посчитать количество отрицательных элементов массива, больших заданного значения

07.10.2014, 20:23. Показов 1573. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача такая.
Дана матрица 10 на 10 и числа выводятся рандомно в диапазоне от -15 до 15. И надо посчитать количество отрицательных элементов, больших заданного значения. Значение вводим сами.
Ну и вывести на экран саму матрицу и само количество этих отрицательных элементов. Если таких элементов нет, то вывести на экран что их нету, что логично, в принципе

Что я делаю не так? Матрицу он выводит, ограничение тоже, а само количество нет. В программе количесвто обозначено через pmax.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
uses crt;
const n=10; m=10;
var a:array[1..n,1..m] of integer;
i,j,a1,a2,k,max,pmax:integer;
begin clrscr;
randomize;
for i:=1 to n do begin
for j:=1 to m do begin
begin
a1:=random(15);
a2:=random(15);
a[i,j]:=a1-a2;
write(a[i,j]:8,' '); end;end;writeln;end;
begin
write('Vvedite chislo k for otrichatelnih:');
read(k); end;
begin
max:=k;
pmax:=0;
for i:=1 to n do
for j:=1 to m do
begin
if a[i,j] > max then begin
pmax:=pmax+1;
writeln('pmax',pmax);
readln;
end;end;end.

Тут я принимаю это ограничение k за максимум в массиве и смотрю, если есть элемент больше k, то увеличиваю счетчик до 1. И так в цикле. Помогите, пожалуйста.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.10.2014, 20:23
Ответы с готовыми решениями:

Посчитать количество отрицательных, положительных и нулевых элементов массива
Заполнить массив случайными числами (положительными и отрицательными) из произвольного диапазона. Вывести созданный массив на экран,...

Подсчитать количество элементов массива, значения которых больше заданного числа А и кратны 5
Задача 1. Сформировать массив из 20 положительных чисел. Найти сумму первых 10 членов и максимальное значение среди оставшихся элементов. ...

Посчитать количество отрицательных элементов главной диагонали матрицы
Составить схему алгоритма и написать программу. Дан массив О = }, i=1,10; j=1,10 ] (элементы выбираются случайным образом): ...

4
 Аватар для ermolay
3451 / 2389 / 2135
Регистрация: 04.12.2011
Сообщений: 3,966
07.10.2014, 22:45
Цитата Сообщение от Jalise Посмотреть сообщение
Что я делаю не так?
Эмм.. с чего бы начать...

ну вот ваша программа в рабочем виде, посмотрите, сравните, что непонятно (а наверняка что-то да должно быть непонятно ) - спрашивайте:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
const
  n = 10;
 
var
  a: array[1..n, 1..n] of integer;
  i, j, k, pmax: integer;
 
begin
  randomize;
  for i := 1 to n do 
  begin
    for j := 1 to n do
    begin
      a[i, j] := random(31) - 15;
      write(a[i, j]:4); 
    end;
    writeln;
  end;
  writeln;
  write('Vvedite chislo k for otrichatelnih:');
  read(k);
  pmax := 0;
  for i := 1 to n do
    for j := 1 to n do
      if (a[i, j] > k) and (a[i, j] < 0) then
        pmax := pmax + 1;
  if pmax = 0 then writeln('Iskomih elementov net')
  else writeln('Iskomih elementov ', pmax);
  readln;
end.
1
Модератор
Эксперт Pascal/DelphiЭксперт NIX
 Аватар для bormant
7816 / 4635 / 2837
Регистрация: 22.11.2013
Сообщений: 13,158
Записей в блоге: 1
07.10.2014, 23:05
В 14 строке имеет смысл написать несколько иначе:
Pascal
1
a[i, j] := -15 + random(31);
иначе отладочная сборка может давать в этой строке ошибки времени выполнения "целочисленное переполнение" при случайных меньших 15.
2
3 / 3 / 1
Регистрация: 11.10.2014
Сообщений: 148
11.10.2014, 13:08
Спасибо вам обоим
А подскажите пожалуйста, почему именно такая запись для интервала?
Вот как в любой интервал включить отрицательные элементы через random?
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
11.10.2014, 13:14
Пусть a начало интервала, b-конец, тогда
Pascal
1
x:=a+random(b-a+1);
Добавлено через 56 секунд
Pascal
1
x:=-15+random(31);//от -15 до +15
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.10.2014, 13:14
Помогаю со студенческими работами здесь

В матрице посчитать количество строк и столбцов не содержащих отрицательных элементов
В матрице посчитать количество строк и столбцов не содержащих отрицательных элементов. Помогите, пожалуйста) Нужна программа на паскале.

Найти сумму всех элементов массива вещественных чисел, больших заданного числа
Нужна помощь в задаче не знаю что писать перед кодом помогите плизз))) Найти сумму всех элементов массива вещественных чисел, больших...

Найти сумму всех элементов массива вещественных чисел, больших заданного числа
Условие: Найти сумму всех элементов массива вещественных чисел, больших заданного числа. Размерность массива – 20. Заполнение массива...

В двумерном массиве посчитать количество положительных и отрицательных элементов в каждой строке
В двумерном массиве посчитать количество положительных и отрицательных элементов в каждой строке + блок-схема Помогите, пожалуйста

Найти количество элементов массива, больших первого элемента массива
Одномерные массивы Ввести или сгенерировать одномерный целочисленный массив A размерности N. Найти количество элементов массива больших...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru