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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Передача в функцию динамический массив объектов первого и второго типа http://www.cyberforum.ru/cpp-beginners/thread1104616.html
каким способом это можно сделать ? )
C++ Не имею понятия как решать задачу (классы) Створити клас вибірка Sample розмірності N. Передбачити функції для виконання наступних операцій: консольне введення/виведення значень вибірки, розрахунок середнього, дисперсії, розмаху, середньоквадратичного відхилення. Розробити дружню функцію для розрахунку критерію Кохрена (G=Smax / ∑ Si). Подтолкните в нужном направлении, что такое дружня функция? http://www.cyberforum.ru/cpp-beginners/thread1104613.html
Найти разность количества положительных и отрицательных элементов C++
Помогите, пожалуйста. Нужно переделать вторую часть, где идет работа с заданием 2. Там выполняется сумма отрицательных элементов. А мне нужно найти разность количества положительных и отрицательных элементов, где элементы считываются из файла. // GuryanovFirstlab.cpp : Defines the entry point for the console application. // #include "stdafx.h" // подключаем файл #include...
Добавления свойст C++
Добрый день. Требуется задать свойство в С++ в одно из полей класса. Ищу в гугле. Везде пишется как на 2008+ версиях тыкаешь на класс правой кнопкой и жмёшь создать. Но нигде не написано как это сделать в ручную. Проблема в том, что добавления свойств правой кнопкой нету в версии 2005. А мне нужно использовать именно её.
C++ OpenMP http://www.cyberforum.ru/cpp-beginners/thread1104594.html
#pragma omp parallel private(i) shared(j) { #pragma omp for for (j = 0; j < n; j++) { for (i = 0; i < m; i++) { mas = rand(); } } }
C++ Кто че знает? Не ссылаясь на доказательство теоремы Ферма, покажите, что множество всех показателей n, для которых существует решение уравнения xn + yn = zn в целых положительных числах, перечислимо. (Как теперь известно, это множество содержит лишь числа 1 и 2.) подробнее

Показать сообщение отдельно
Dicharmed
0 / 0 / 0
Регистрация: 22.10.2013
Сообщений: 19

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

24.02.2014, 21:22. Просмотров 664. Ответов 1
Метки (Все метки)

Пытаюсь переделать статический в динамический. что-то не получается.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
Задание 1. Номер минимального по модулю элемента массива;
Задание 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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
#include <iostream>
#include <time.h>
#include <fstream>
using namespace std;
int InpN()
{
    int n;
    do
    {
        cout<<"Введите текущий размер массива "<<endl;
        cin>>n;
    }while (n<=0);
    return n;
}
int* Zap (int n, int *A,int a,int b)
{
    srand (unsigned int(time(0)));
    int *p=A;
    for (int i=0; i<n; i++,p++)
    *p=rand()%(b-a+1)+a;
    return A;
}
int *Zap (int n, int *A)
{
    int *p=A;
    for (int i=0; i<n; i++,p++)
    {
        cout<<i+1<<"Элемент массива->";
        cin>>*p;
    }
    return A;
   }
int Zap (int &n, int *&A,char Name[])
{
    int *p=A;
    ifstream f (Name);
    if (!f) {cout<<"Error"; return 1;}
    for (int i=0; i<n&&(!f.eof()); i++,p++)
        {f>>*p;
    n=i;}
    f.close();
    return 0;
}
void Print (int &n, int *A)
{
    int*p=A;
    for (int i=0; i<n; i++,p++)
            cout<<" "<<*p;
        cout<<endl;
        
}
 
int *Min(int *A,int n)
{
    /*int *p=A;*/
    
    int min=A[0];
    for(int k=1;k<n;k++/*,p++*/)
    {
        if (*(A+k)<min) min=*(A+k);
        /*if (min>*p) min=*p;*/
        
        
    }
    return min;/*error C2440: return: невозможно преобразовать "int" в "int *"*/
}
int *Nom (int *A,int&n,int min)
{
    int m=A[0];
    int imin=0; 
    for (int k=0;k<n;k++)
    {
        if(Array[k]<m)
        {
            m=Array[k];
            imin=k;
        }   
 
    }       
 
    
    cout<<"Номер минимального элемента массива: "<<imin+1<<endl;
    
    return m;   
}
//int Summa(int Array[],int n)
//{
//  int i;
//  int S=0;
//  for(i=0;i<n&&Array[i]>0;i++);
//  if(i<n)
//      {
//          i++;
//          for(;i<n;i++)
//          S+=Array[i];
//      }
//  else cout<<"Нет отрицательных чисел!"<<endl;
//  return S;
//}
//
 
 
 
int main()
{
    setlocale(0,"");
    int n=InpN();
    int *Array=new int[n];
    cout<<"Заполнение массива: 1- Случайными, 2- С клавиатуры,3-Из файла"<<endl;
    int t;
    cin>>t;
    switch (t)
    {
        case 1 : 
        int a,b;
        cout<<"ВВ диапазон"<<endl;
        cin>>a>>b;
        Array=Zap( n,Array,a,b);break;
        case 2:
        Array=Zap(n,Array) ;break;
        case 3:
        if (Zap (n, Array,"Name.txt"))return 0;break;
    }
    cout<<endl<<"Исходный массив"<<endl;
        Print (n,Array);
        delete[] Array;
    /*const int Nmax=200;
    int Array[Nmax],Sum;
    int n=InpN(Nmax);int k=0;int m=0;   
    
    cout<<endl<<"Исходный массив"<<endl;
    Print (n,Array,1);  
    m=Min(Array,k);
    Nom(Array,n,m);
    Sum=Summa(Array,n);
    cout<<"Сумма= "<<Sum<<endl;*/
    system ("pause");
    return 0;
    }
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru