Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
Jaksn
3 / 3 / 0
Регистрация: 26.03.2011
Сообщений: 114
#1

Поиск противоположных пар чисел - C++

26.03.2011, 13:47. Просмотров 1386. Ответов 13
Метки нет (Все метки)

Народ, помогите пожалуйста написать программу! Условие задачи следующее.
Записать в файл последовательного доступа n целых чисел, полученных с помощью генератора случайных чисел. Посчитать количество пар противоположных чисел среди компонентов этго файла.
Напишете пожалуйста полный текст программы от начала и до конца!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.03.2011, 13:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поиск противоположных пар чисел (C++):

Записать в массив N целых чисел. Подсчитать количество пар противоположных чисел среди компонентов этого массива - C++
Записать в массив N целых чисел. Подсчитать количество пар противоположных чисел среди компонентов этого массива

Найти количество пар соседних элементов, одинаковых по абсолютному значению, но противоположных по знаку - C++
мое конкретное задание: Найти количество пар соседних элементов, которые имеют одинаковые абсолютные значения, но противоположные знаки ...

Поиск пар чисел в массиве, которые в сумме дают определенное число - C++
Условия программы: Дан целочисленный массив положительных чисел,(не отсортированный) и полож число "s" типа int . В массиве нет...

Бинарный поиск таких пар чисел массива, чтобы их сумма попадала в заданный диапазон - C++
доброго времени суток. не смог разобраться с бинарным поиском, математически примерно имею представление, а написать программу не...

Определить, имеется ли среди чисел a, b, c хотя бы одна пара взаимно противоположных чисел - C++
Напишите пожалуйста вкратце хотя бы программу. Благодарю заранее

Среди чисел а, b, с есть хотя бы одна пара взаимно противоположных. - C++
Запишите логическое выражение, принимающее значение true, если указанное выше высказывание является истинным, и false – в противном...

13
IrineK
Заблокирован
26.03.2011, 17:55 #2
Напишете пожалуйста полный текст программы от начала и до конца!
В Си или С++?
Начало и конец будут разные. Да и середина местами.
0
Jaksn
3 / 3 / 0
Регистрация: 26.03.2011
Сообщений: 114
26.03.2011, 19:11  [ТС] #3
Мне нужно в Си++.
0
Байт
Эксперт C
16535 / 10805 / 1638
Регистрация: 24.12.2010
Сообщений: 20,827
26.03.2011, 19:57 #4
Jaksn, Было бы любопытно посмотреть на твои попытки и соображения на этот счет.
Если таковых нет, тогда тут есть такой раздел - Фриланс.
 Комментарий модератора 
А еще у нас есть правила п 5.9 Запрещено отсылать пользователей из тематических разделов в разделы фриланса, а также рекламировать свои услуги или просить/требовать оплату за помощь, кроме разделов для платных услуг.

Не по теме:

Студент бывает умный или богатый. Нищих и глупых студентов не бывает

2
Jaksn
3 / 3 / 0
Регистрация: 26.03.2011
Сообщений: 114
27.03.2011, 12:40  [ТС] #5
Я создал массив и задал 2 цикла и сделал такое условие:

C++
1
2
3
for (i=0; i<size;i++)
    for (j=0; j<size;j++)
        if(nums[i]+nums[j]==0 && nums[i] !=0)
Вроде все работает, но не совсем правильно. К примеру если встречаются числа 9, 9, 9 и -9, то на выходе будет три пары чисел, а нужно чтобы одна была.
1
Байт
Эксперт C
16535 / 10805 / 1638
Регистрация: 24.12.2010
Сообщений: 20,827
28.03.2011, 05:52 #6
Jaksn, Все правильно. То, что ты написал так и должно работать. А что ты понимаешь под "противоположными" числами? Если просто числа разного знака - у тебя все верно. Если числа разного знаки, симметричные относительно середины ряда, тогда так
C
1
2
for(i=0; i<size; i<size/2)
if (num[i]+num[size-i-1]==0 && num[i]!=0) ....
2
Jaksn
3 / 3 / 0
Регистрация: 26.03.2011
Сообщений: 114
28.03.2011, 19:13  [ТС] #7
Под противоположными числами я понимаю такие числа: 5, -5; 6,-6; 18, -18 и т.д. Я понимаю, что программа работает правильно, но не так как нужно мне. Я уже писал, что если в массиве будет два или больше чисел (например положительных) и одно отрицательное ( я имею ввиду, что будет так: 5,5,5........5 и -5), то я получу столько пар чисел, сколько положительных (или отрицательных, зависит от того, каких больше), а мне нужно в таком случае только одну пару. А как так сделать я не знаю!
0
Байт
Эксперт C
16535 / 10805 / 1638
Регистрация: 24.12.2010
Сообщений: 20,827
28.03.2011, 20:04 #8
Jaksn, сделай массив, в нем запоминай то, что встретилось, повторы не записывай, вот и все.
1
Jaksn
3 / 3 / 0
Регистрация: 26.03.2011
Сообщений: 114
28.03.2011, 21:06  [ТС] #9
Если бы я сам его вводил, то это выход, но мне нужно с помощью rand заполнить массив, а там числа повторяются.
0
eXXXXXXXXXXX
30 / 30 / 3
Регистрация: 24.02.2011
Сообщений: 126
28.03.2011, 21:14 #10
заполняешь массив c помощью rand, если находишь очередную пару, то меняешь значения в массиве на 0
1
Jaksn
3 / 3 / 0
Регистрация: 26.03.2011
Сообщений: 114
28.03.2011, 22:39  [ТС] #11
Напиши код, как это будет выглядеть пожалуйста.
0
Jaksn
3 / 3 / 0
Регистрация: 26.03.2011
Сообщений: 114
03.04.2011, 18:44  [ТС] #12
Народ, помогите плиз! Подскажите какой будет код, если сделать как подсказал eXXXXXXXXXXX или как еще можно устранить данную проблему.
0
argumente
1 / 1 / 0
Регистрация: 15.04.2013
Сообщений: 15
29.01.2015, 10:22 #13
Тоже интересна данная задачка
0
Тамика
Котовчанин
917 / 460 / 145
Регистрация: 16.02.2010
Сообщений: 3,190
Записей в блоге: 27
29.01.2015, 12:23 #14
argumente, и тоже не в состоянии самому написать код?
0
29.01.2015, 12:23
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.01.2015, 12:23
Привет! Вот еще темы с ответами:

Заданы три числа. Определить, имеется ли среди них хотя бы одна пара взаимно противоположных чисел - C++
Заданы три числа. Определить, имеется ли среди них хотя бы одна пара взаимно противоположных чисел. Есть вот такая вот задача, но при...

Заданы три числа. Определить, имеется ли среди них хотя бы одна пара взаимно противоположных чисел - C++
Заданы три числа. Определить, имеется ли среди них хотя бы одна пара взаимно противоположных чисел.

поиск нечетных пар - C++
Подскажите пожалуйста, нужно в массиве перебирая парами элементы найти все неченые пары и увеличить их на 1. void Vect::func() {int...

Вектор пар и бинарный поиск - C++
Всем доброго времени суток. Решаю следующую задачу. Есть vector &lt;pair&lt;int,int&gt;&gt; v я его сортирую и потом хочу...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru