Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
microhaste
0 / 0 / 0
Регистрация: 24.11.2010
Сообщений: 4
#1

одномерный массив. - C++

24.11.2010, 22:48. Просмотров 782. Ответов 10
Метки нет (Все метки)

Даны два массива x содержащий k элементов и y содержащий n элементов и число q. Найти сумму вида x[i]+y[j], наиболее близкую к числу q.

напишите только как найти сумму x[i]+y[j] наиболее близкое к q...
заранее спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.11.2010, 22:48     одномерный массив.
Посмотрите здесь:

Одномерный массив - C++
1. В одномерном массиве, состоящем из n вещественных элементов, вычислить: a) минимальный из положительных элементов, его порядковый...

одномерный массив - C++
В одномерном массиве, состоящем из n целых элементов, вычислить: 1) номер максимального элемента массива; 2) произведение элементов...

Одномерный массив - C++
Кто нить помоги разобраться в этом адском ужасе, что совсем не чего не выходит... Создавть в динамической памяти одномерный массив...

Одномерный массив C++ - C++
1.Дан одномерный массив В состоящий из 10 элементов. Найти максимальный и минимальный элементы данного массива. 2.Написать функцию, в...

Одномерный массив - C++
В одномерном массиве, состоящем из п целых элементов, вычислить: 1) номер максимального элемента массива; 2) произведение элементов...

Одномерный массив. - C++
Прошу помощи в решении 3 задач на одномерный массив на C++: 1) Дан массив х1,х2,...,xn. Найти количество элементов кратных трем и...

Одномерный массив - C++
Создать массив из 20 вещественных чисел.Определить, сколько из них больше своих "соседей," т.е. предыдущего и последующего чисел. ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
4669 / 2495 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
24.11.2010, 22:52     одномерный массив. #2
Перебором. Если массивы отсортировать, то немного по другому можно
anzhelika
1 / 1 / 0
Регистрация: 22.09.2010
Сообщений: 31
24.11.2010, 23:02     одномерный массив. #3
C++
1
2
3
4
for (int i=0;i<k;i++)
    for (int j=0;j<n;j++)
        if(fabs(x[i]+y[j]-q)<0.001)
            printf("summa elementov x[%d] + y[%d] naibolee priblezhena k q", i,j);
valeriikozlov
Эксперт C++
4669 / 2495 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
24.11.2010, 23:06     одномерный массив. #4
anzhelika, А если самое близкое приближение x[i]+y[j] к q равно 0,001 или чуть больше?
anzhelika
1 / 1 / 0
Регистрация: 22.09.2010
Сообщений: 31
24.11.2010, 23:28     одномерный массив. #5
Цитата Сообщение от valeriikozlov Посмотреть сообщение
anzhelika, А если самое близкое приближение x[i]+y[j] к q равно 0,001 или чуть больше?
C++
1
2
3
4
5
6
7
8
9
10
11
double eps=100000;
int ii, jj;
for (int i=0;i<k;i++)
    for (int j=0;j<n;j++)
        if(fabs(x[i]+y[j]-q)<eps)
        {
            eps=fabs(x[i]+y[j]-q);
            ii=i;
            jj=j;
        }
printf("summa elementov x[%d] + y[%d] naibolee priblezhena k q", ii,jj);
valeriikozlov
Эксперт C++
4669 / 2495 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
24.11.2010, 23:34     одномерный массив. #6
anzhelika, мне немного смешно писать, но:
дан массив: x[]: 1 2 3 4 5 6 7 8 9 10
y[]: 10 9 8 7 6 5 4 3 2 1
q=200000;
Что выдаст Ваша программа?
anzhelika
1 / 1 / 0
Регистрация: 22.09.2010
Сообщений: 31
24.11.2010, 23:48     одномерный массив. #7
Цитата Сообщение от valeriikozlov Посмотреть сообщение
anzhelika, мне немного смешно писать, но:
дан массив: x[]: 1 2 3 4 5 6 7 8 9 10
y[]: 10 9 8 7 6 5 4 3 2 1
q=200000;
Что выдаст Ваша программа?
вам то смешно, конечно.
у меня всё работает например.
да и потом, нечего смеяться над человеком, который всему этому еще только учится.

C++
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
#include<stdio.h>
#include<math.h>
void main()
{
    int k=4;
    int n=4;
    double *x=new double[k];
    double *y=new double[n];
    double q=4;
    double eps=100000;
    for (int i=0;i<k;i++)
        scanf("%lf",&x[i]);
     for (int j=0;j<n;j++)
        scanf("%lf",&y[j]);
    int ii, jj;
    for (int i=0;i<k;i++)
        for (int j=0;j<n;j++)
                if(fabs(x[i]+y[j]-q)<eps)
                {
                        eps=fabs(x[i]+y[j]-q);
                        ii=i;
                        jj=j;
                }
printf("summa elementov x[%d] + y[%d] naibolee priblezhena k q\n", ii,jj);
}
valeriikozlov
Эксперт C++
4669 / 2495 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
24.11.2010, 23:54     одномерный массив. #8
anzhelika, я парирую:
в массив x[4], я введу значения: 200000, 400000, 600000, 800000;
в массив y[4], я введу значения: 1000000, 1200000, 1400000, 1600000
anzhelika
1 / 1 / 0
Регистрация: 22.09.2010
Сообщений: 31
24.11.2010, 23:56     одномерный массив. #9
q и eps можно задать максимальными, сколько вмещает тип дабл. извините, цифр этих я не помню
valeriikozlov
Эксперт C++
4669 / 2495 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
24.11.2010, 23:59     одномерный массив. #10
anzhelika, я так думаю, что числа k, n, q и значения элементов массивов должны вводится с клавиатуры.
Проще всего eps=fabs(x[0]+y[0]-q);
а потом делать перебор элементов обоих массивов.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.11.2010, 00:09     одномерный массив.
Еще ссылки по теме:

Одномерный массив. - C++
Составить программу, выполняющую с одномерным массивом следующие действия: В одномерном массиве, состоящем из п вещественных элементов,...

Одномерный массив - C++
1.Найти кол-во элементов массива,больших С. 2.Найти произведение элементов массива,расположенных после максимального по модулю элемента. ...

одномерный массив - C++
Дан одномерный массив из n элементов,определите сумму первых B элементов и последних C элементов, если сумма 1ых будет больше суммы...

Одномерный массив - C++
Задания дан одномерный массив A вводимый с клавиатуры, данно число B также вводимое с клавиатуры надо чтобы программа делала так A+1*D,...

Одномерный массив - C++
Здравствуйте. Нужна помощь в решении задачи: Дано числовой одномерный массив из 16 элементов. Найти четные элементы массива, значение...


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

Или воспользуйтесь поиском по форуму:
anzhelika
1 / 1 / 0
Регистрация: 22.09.2010
Сообщений: 31
25.11.2010, 00:09     одномерный массив. #11
valeriikozlov, вы, конечно, думаете глобально,всё предусматриваете. но для таких типовых задач требуется решение. а уж то, что q задано в программе, а не с клавиатуры - ерунда. приведение к идеалу - дело 2х минут
eps=fabs(x[0]+y[0]-q); - согласна, так проще.
Yandex
Объявления
25.11.2010, 00:09     одномерный массив.
Ответ Создать тему
Опции темы

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