Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
0 / 0 / 0
Регистрация: 05.02.2019
Сообщений: 7
1

Определить в массиве число соседств двух чисел разного знака

05.02.2019, 17:17. Показов 2899. Ответов 9

Author24 — интернет-сервис помощи студентам
Помогите,пожалуйста, с заданием! ОЧЕНЬ НУЖНА ВАША ПОМОЩЬ,РЕБЯТА
Составить программу решения задачи с использованием одномерного массива.Определить в числовом массиве a(n) число соседств из двух чисел разного знака.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.02.2019, 17:17
Ответы с готовыми решениями:

Определить число соседств только двух отрицательных чисел в одномерном массиве из n элементов
Определить число соседств только двух отрицательных чисел в одномерном массиве из n элементов.

В одномерном массиве определить число соседств двух чисел разного знака
Дан одномерный числовой массив. Определить в нём число соседств двух чисел разного знака.

Определить в вещественном массиве число соседств из двух чисел разного знака
Определить в вещественном массиве число соседств из двух чисел разного знака.

В заданном массиве определите число соседств двух чисел разного знака
В заданном массиве определите число соседств двух чисел разного знака.

9
2373 / 775 / 561
Регистрация: 15.01.2019
Сообщений: 2,394
05.02.2019, 18:06 2
Лучший ответ Сообщение было отмечено ZX Spectrum-128 как решение

Решение

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
program PlasMinusArr;
const
  n = 20;
type
  mass = array[1..n] of integer;
var
  i: integer;
  a: mass;
  reg: integer;
begin
  randomize;
  for i:=1 to n do //Заполняем массив числами с разными знаками и
     begin          //сразу выводим его в консоль.
     a[i]:= random(3)-1;
     write(a[i],' ');
     end;
 
  reg:=0;
  for i:=1 to n do
     if ((a[i]<0) and (a[i+1]>0)) or ((a[i]>0) and (a[i+1]<0)) then
     reg:=reg+1;
  writeln();
  writeln ('Number of neighborhoods: ', reg);
 
  readln();
end.
Проверьте, именно так нужно считать соседство?
0
0 / 0 / 0
Регистрация: 05.02.2019
Сообщений: 7
05.02.2019, 19:15  [ТС] 3
вроде нет, я точно не знаю
0
Модератор
9261 / 6039 / 2379
Регистрация: 21.01.2014
Сообщений: 25,803
Записей в блоге: 3
06.02.2019, 04:06 4
Цитата Сообщение от ValentinNemo Посмотреть сообщение
Проверьте
На последней итерации цикла будет вылет за границы... Нету в массиве из n элементов элемента с индексом [n + 1]!
0
2373 / 775 / 561
Регистрация: 15.01.2019
Сообщений: 2,394
06.02.2019, 07:12 5
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
program PlusMinusArr;
const
  n = 20;
type
  mass = array[1..n] of integer;
var
  i: integer;
  a: mass;
  reg: integer;
begin
  randomize;
  for i:=1 to n do //Заполняем массив числами с разными знаками и
     begin          //сразу выводим его в консоль.
     a[i]:= random(3)-1;
     write(a[i],' ');
     end;
 
  reg:=0;
  for i:=1 to n-1 do  //Сравниваем значение элемента со значением последующего элемента
                       // если знаки разные,  то счетчику reg добавляем единичку.
     if ((a[i]<0) and (a[i+1]>0)) or ((a[i]>0) and (a[i+1]<0)) then
     reg:=reg+1;
  writeln();
  writeln ('Number of neighborhoods: ', reg);
 
 
  readln();
end.
Исправил. Вместо n поставил n-1.
0
Модератор
9261 / 6039 / 2379
Регистрация: 21.01.2014
Сообщений: 25,803
Записей в блоге: 3
06.02.2019, 07:34 6
ValentinNemo, правильно, но длинно... Я бы короче записал:
Delphi
1
2
3
uses ..., Math;
...
if Sign(a[i]) <> Sign(a[i + 1]) then inc(reg);
0
2373 / 775 / 561
Регистрация: 15.01.2019
Сообщений: 2,394
06.02.2019, 08:57 7
Sign() - это функция, которая возвращает знак. Если число отрицательное, то sign = -1, если число - ноль, то sign = 0, если число положительное, то sign = 1. Правильно?
Но если так, то получается, что программа подсчитывает не только соседей с разными знаками, но и соседей с нулевым значением, что не подходит по условиям задачи
Цитата Сообщение от slday Посмотреть сообщение
Определить в числовом массиве a(n) число соседств из двух чисел разного знака.
Беда в том, что участник форума, что дал это задание, не смог даже проверить, выполнено условие задачи или нет.
0
Модератор
9261 / 6039 / 2379
Регистрация: 21.01.2014
Сообщений: 25,803
Записей в блоге: 3
06.02.2019, 09:52 8
Цитата Сообщение от ValentinNemo Посмотреть сообщение
что не подходит по условиям задачи
Почему? Задание-то вот оно; где в нем хоть намек на то, что 0 надо игнорить? Это уже Ваши домыслы...
Цитата Сообщение от ValentinNemo Посмотреть сообщение
... из двух чисел разного знака
Вот Вам три разных состояния: минус, плюс, ноль... Если 2 рядомстоящих элемента в одном состоянии - не учитывается, если в несовпадающих - учитывается. Что не так?
1
2373 / 775 / 561
Регистрация: 15.01.2019
Сообщений: 2,394
06.02.2019, 16:10 9
Ноль имеет знак? Впервые слышу! Но если модератор сказал, что на клетке со львом написано жираф, значит не верь глазам своим. Тема закончена. В1973 молодец! Лайки вам за это! Пойду посыплю голову пеплом! О горе мне горе! На всю жизнь запомню, что нуль имеет знак минус и знак плюс и еще много много других знаков!
0
Модератор
9261 / 6039 / 2379
Регистрация: 21.01.2014
Сообщений: 25,803
Записей в блоге: 3
06.02.2019, 18:02 10
ValentinNemo, я не совсем понимаю Вашу иронию... Ноль - самостоятельная сущность, отличная от положительных и отрицательных чисел. И я совсем не понимаю, почему это Вас так смущает... При чем тут Ваше "Ноль имеет знак"? Вас же не удивляет, что физическое вещество может находиться в трех состояниях (твердое, жидкое, газообразное - плазму оставим физикам-теоретикам). Почему же Вас так удивляет, что число может быть положительным, отрицательным или "никаким" (0)? Ваша ирония в данном случае мне совсем не понятна!!!
0
06.02.2019, 18:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.02.2019, 18:02
Помогаю со студенческими работами здесь

В заданном массиве определите число соседств двух чисел разного знака
В заданном массиве определите число соседств двух чисел разного знака ( с алгоритмом )

Определить число соседств двух чисел разного знака
помогите в решении, пожалуйста.

определить число соседств двух чисел разного знака.
помогите пжалста народ. очень надо ибо сессия.( Даны натуральное число N и последовательность...

В заданном массиве определить количество соседств двух чисел разного знака
Нужен код с++ с выводом массива и решением Тип элементов: целые Кол-во элементов: 20 Элементы...

В последовательности определить число соседств двух чисел разного знака
помогите написать программу и составить к ней блок-схему: дано число n,числа А1,....,Аn. В этой...

В последовательности определить число соседств: двух положительных чисел; двух чисел разного знака
В последовательности а1 … аn определить число соседств: a) двух положительных чисел; b) двух чисел...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru