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

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

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

одномерные массивы и сложный поиск - C++

18.12.2011, 18:59. Просмотров 384. Ответов 5
Метки нет (Все метки)

помогите пажалуста
я не могу понять как создать и вывести масив Ук=sin(pow(x,2))*cos(pow(x,3))-sin(x)+5.2
с элементами к = 1,2...,7.
Второй отрицательный элемент заменить минимальным.

Добавлено через 1 час 16 минут
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
26
#include <fstream.h>
#include<iostream.h>
#include<math.h>
#include <conio.h>
#include <condefs.h>
#define N 10
float *y = new float[N];
float *g = new float[N];
float x = 0;
int k;
int n;
void main()
{
cout<<"ваап";
for ( k = 0, n = 0; k < 10; k++, x+=0.5 )
{
*( y + k ) = sin(pow(x,2))*cos(pow(x,3))-sin(x)+5.2;
cout << k << '\t' << *( y + k ) << "\n";
 
}
delete[]y;
 
delete[]g;
 
system( "pause" );
}
вот програму создал для масива,вродебы роботает а как заменить елемент незнаю
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.12.2011, 18:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос одномерные массивы и сложный поиск (C++):

одновимерни массивы и сложный поиск - C++
помогите пажалуста я не могу понять как создать и вывести масив Ук=fabs(sin(x/3.12)+cos(pow(x,2)))-8.3*sin(3*x) с элементами к =...

Одномерные массивы. Поиск последовательностей - C++
Помогите с задачей !!! в с++ Объявить массив целых чисел и заполнить его случайными значениями. Рзмерность массива – 100, диапазон...

Одномерные массивы - C++
Ввести одномерный массив из n элементов вещественного типа. Заменить все элементы, значения которых больше заданного числа Z, этим числом....

Одномерные массивы - C++
Помогите пожалуйста, очень надо)) заранее спасибо))) Тема: Одномерные массивы. Разработать программу на языке программирования...

Одномерные массивы - C++
Помогите решить задачу на C. Есть массив a = {0, 3, -5, 0, -8, -0.6, 0.8, 1, 0.5, 7} Необходимо найти: 1) Количество элементов...

одномерные массивы - C++
помогите пожалуйста решить задание используя функции на подбее вот этого (см.скриншот)! ...

5
insolent
826 / 344 / 15
Регистрация: 30.01.2009
Сообщений: 1,204
18.12.2011, 20:33 #2
При 7-и итерациях вряд ли будет хоть один отрицательный элемент, а вот если убрать добавление 5.2, то будут отрицательные

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <iostream>
#include <cmath>
 
using namespace std;
 
const int k = 7;
 
void Print(double arr[], int n)
{
    for (int i = 0 ; i < n; i++)
        cout << arr[i] << " ";
    cout << endl;
}
int main()
{ 
    double Y[k], x = -1, min = 0;
    int count = 0;
 
    for (int i = 0; i < k; i++, x += 0.5)
        Y[i] = sin(pow(x,2))*cos(pow(x,3))-sin(x);
 
    Print(Y, k);
 
    for (int i = 0; i < k; i++)
        if (Y[i] < min)
            min = Y[i];
 
    for (int i = 0; i < k; i++)
    {
        if (Y[i] < 0)
            count++;
        if (count == 2)
            Y[i] = min;
    }
 
    Print(Y, k);
 
    return(0);
}
0
Vitamin
0 / 0 / 0
Регистрация: 18.12.2011
Сообщений: 10
18.12.2011, 21:38  [ТС] #3
а как зделать просто чтобы минимальное значение стало вторым?
0
edward_jonson
158 / 158 / 25
Регистрация: 23.02.2011
Сообщений: 392
19.12.2011, 00:58 #4
C++
1
2
3
4
int min=0;
/*...*/
for (k=1;k<10;k++) if(*(y+k)<*(y+min)) min=k; 
*(y+1)=*(y+min);
только зачем вы делаете массив размерности 10, если вам надо для 1..7?
0
Vitamin
0 / 0 / 0
Регистрация: 18.12.2011
Сообщений: 10
19.12.2011, 01:13  [ТС] #5
согласен что сглупил с массивом,но немогу понять,это то что вы дописали,никак не влияет на програму, или я его неправильно вставляю!
немогли бы вы сбросить полную програму или обьяснить в чом проблема у меня ?
0
edward_jonson
158 / 158 / 25
Регистрация: 23.02.2011
Сообщений: 392
19.12.2011, 03:19 #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream.h>
#include <math.h>
#define N 7
void main()
{
    float *y = new float[N],*g = new float[N],x=0.0;
    int k,min=0;
    for (k=0;k<N;k++,x+=0.5)
    {
    *(y+k)=sin(pow(x,2))*cos(pow(x,3))-sin(x)+5.2;
        cout << k << '\t' << *(y+k) << "\n";
    }
   for (k=1;k<N;k++) if(*(y+k)<*(y+min)) min=k;
    *(y+1)=*(y+min);
   cout << "After change:\n";
   for(k=0;k<N;k++)
    cout << k << '\t' << *(y+k) << "\n";
    delete[]y;
    delete[]g;
}
вам надо было просто ещё раз вывести уже изменённый массив на экран.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.12.2011, 03:19
Привет! Вот еще темы с ответами:

одномерные массивы - C++
#include &lt;iostream.h&gt; #include &lt;conio.h&gt; #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; int main() {char A; long int...

Одномерные массивы - C++
дан массив целых чисел Найти в этом массиве мин и макс элемент массива.Получить в порядке возрастания все целые числа из...

Одномерные массивы - C++
Помогите плз если не трудно) В одномерном массиве состоящем из n вещественых элементов вычислить: 1) Количество элементов меньше С 2)...

Одномерные массивы. - C++
Помогите пожалуйста! На завтра нужна прога в С++, а у меня ничего не выходит=(.Известны данные о численности населения (в млн жителей) и...


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

Или воспользуйтесь поиском по форуму:
6
Yandex
Объявления
19.12.2011, 03:19
Ответ Создать тему
Опции темы

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