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

Найти номер минимального элемента массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ работа с двумерными массивами http://www.cyberforum.ru/cpp-beginners/thread405172.html
помогите пожалуйста решить задачу. Дана квадратная матрица размерностью N. Найти минимум из произведений по столбцам. Добавлено через 51 минуту s=1 for (i=j;n<N;i++) { for (i=1;n<N;i++) s=s*A }
C++ Динамические структуры данных Доброго времени суток !!! Помогите написать программу на С++. Условие задачи: Гаражная стоянка имеет одну стояночную полосу, причем единственный въезд и единственный выезд находятся в одном конце полосы. Если владелец автомашины приходит забрать свой автомобиль, который не является ближайшим к выходу, то все автомашины, загораживающие проезд, удаляются, машина данного владельца выводится со... http://www.cyberforum.ru/cpp-beginners/thread405169.html
C++ Формула по ТМО
Подскажите пожалуйста, как написать программку на C++, чтобы некое значение P0 вычислялось по формуле (см.прикреплённое изображение).
Алгоритм Брезенхема C++
Як мені з допомогою алгоритму Брезенхема написати програму яка малює коло?(потрібно використовувати setpixel а не стандартну функцію побудови кола) Как мне с помощью алгоритма Брезенхема написать программу которая рисует круг? (Нужно использовать setpixel а не стандартную функцию построения круга) Официальным языком форума является русский язык.
C++ Откуда взять Microsoft Visual Studio 2010? http://www.cyberforum.ru/cpp-beginners/thread405165.html
Откуда взять Microsoft Visual Studio 2010?
C++ Слово максимальной длины заменить на слово минимальной длины Задача: Создать 2 объекта разработанного класса. Одной из компонент класса является символьная строка. В результате выполнения программы в обоих объектах слово МАХ длины заменить на слово МIN длины. Содержимое объектов (их строки) до и после обмена вывести на экран. Помогите, пожалалуйста написать вот эту часть задачи: В результате выполнения программы в обоих объектах слово МАХ длины... подробнее

Показать сообщение отдельно
amor1k
Студент
147 / 147 / 24
Регистрация: 18.01.2011
Сообщений: 469
14.12.2011, 16:09     Найти номер минимального элемента массива
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
#include<iostream>
#include<cstdlib>
#include<ctime>
#include<math.h>
 
void fillInArr(double *arr,int sizeOfArray);
void autoArr(double *arr,int sizeOfArray);
void printArray(double *arr,int sizeOfArray);
void number_min(double *arr, int sizeOfArray);
void sum(double *arr, int sizeOfArray);
 
int main()
{
    int choice;
    int sizeOfArray;
 
    std::cout << "Enter N = ";
    std::cin >> sizeOfArray;
    std::cout << std::endl;
    double *array = new double[sizeOfArray];
    while(1)
    {
        system("cls");
        std::cout << "1) Enter elements manually "
            << std::endl << "2) Auto array "
            << std::endl << "3) Find the minimum number of element"
            << std::endl << "4) Find summ "
            << std::endl << "6) Print array\n"
            << std::endl << "0) Exit"
            << std::endl << std::endl;
 
        std::cout << "Enter choice: ";
        std::cin >> choice;
 
        std::cout << std::endl;
 
        switch(choice)
        {
        case 1: fillInArr(array, sizeOfArray); break;
        case 2: autoArr(array, sizeOfArray); break;
        case 3: number_min(array, sizeOfArray); break;
        case 4: sum(array, sizeOfArray); break;
        case 6: printArray(array, sizeOfArray); break;
        case 0: return 0;
        }
        system("pause");
    }
 
    std::cout << std::endl;
    std::cout << std::endl;
 
    printArray(array,sizeOfArray);
    system("pause");
    return 0;
}
void fillInArr(double *arr,int sizeOfArray)
{
    for(int i = 0; i < sizeOfArray; i++)
    {
        std::cout << "Element " << i << " is ";
        std::cin >> arr[i];
        std::cout << std::endl;
    }
}
void autoArr(double *arr,int sizeOfArray)
{
    srand(time_t(NULL));
    for(int i = 0; i < sizeOfArray; i++)
        arr[i] = rand();
}
void printArray(double *arr,int sizeOfArray)
{
    for(int i = 0; i < sizeOfArray; i++)
        std::cout << "Element " << i << " is " << arr[i] << std::endl;
}
void number_min(double *arr, int sizeOfArray)
{
    double min = arr[0];
    int imin = 0;
    for(int i = 0; i < sizeOfArray; i++)
    {
        if(arr[i] < min)
        {
            min = arr[i];
            imin = i;
        }
    }
    std::cout << "The minimal number of element = " << imin << std::endl;
}
void sum(double *arr, int sizeOfArray)
{
    double sum = 0.0;
    int k1, k2;
    for(int i = 0; i < sizeOfArray; i++)
    {
        if(arr[i] < 0)
        {
            k1 = i;
            break;
        }
    }
    for(int i = 0; i < sizeOfArray; i++)
    {
        if(arr[i] < 0 && i != k1)
        {
            k2 = i;
            break;
        }
    }
    for(int i = k1+1; i < k2; i++)
        sum += arr[i];
    std::cout << "Summ = " << sum << std::endl;
}
Добавлено через 19 минут
вот полный, но не уверен, что с модулями правильно...
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
140
141
#include<iostream>
#include<cstdlib>
#include<ctime>
#include<math.h>
 
void fillInArr(double *arr,int sizeOfArray);
void autoArr(double *arr,int sizeOfArray);
void printArray(double *arr,int sizeOfArray);
void number_min(double *arr, int sizeOfArray);
void sum(double *arr, int sizeOfArray);
void conversion(double *arr, int sizeOfArray);
 
int main()
{
    int choice;
    int sizeOfArray;
 
    std::cout << "Enter N = ";
    std::cin >> sizeOfArray;
    std::cout << std::endl;
    double *array = new double[sizeOfArray];
    while(1)
    {
        system("cls");
        std::cout << "1) Enter elements manually "
            << std::endl << "2) Auto array "
            << std::endl << "3) Find the minimum number of element"
            << std::endl << "4) Find summ "
            << std::endl << "5) Conversion module"
            << std::endl << "6) Print array\n"
            << std::endl << "0) Exit"
            << std::endl << std::endl;
 
        std::cout << "Enter choice: ";
        std::cin >> choice;
 
        std::cout << std::endl;
 
        switch(choice)
        {
        case 1: fillInArr(array, sizeOfArray); break;
        case 2: autoArr(array, sizeOfArray); break;
        case 3: number_min(array, sizeOfArray); break;
        case 4: sum(array, sizeOfArray); break;
        case 5: conversion(array, sizeOfArray); break;
        case 6: printArray(array, sizeOfArray); break;
        case 0: return 0;
        }
        system("pause");
    }
 
    std::cout << std::endl;
    std::cout << std::endl;
 
    printArray(array,sizeOfArray);
    system("pause");
    return 0;
}
void fillInArr(double *arr,int sizeOfArray)
{
    for(int i = 0; i < sizeOfArray; i++)
    {
        std::cout << "Element " << i << " is ";
        std::cin >> arr[i];
        std::cout << std::endl;
    }
}
void autoArr(double *arr,int sizeOfArray)
{
    srand(time_t(NULL));
    for(int i = 0; i < sizeOfArray; i++)
        arr[i] = rand();
}
void printArray(double *arr,int sizeOfArray)
{
    for(int i = 0; i < sizeOfArray; i++)
        std::cout << "Element " << i << " is " << arr[i] << std::endl;
}
void number_min(double *arr, int sizeOfArray)
{
    double min = arr[0];
    int imin = 0;
    for(int i = 0; i < sizeOfArray; i++)
    {
        if(arr[i] < min)
        {
            min = arr[i];
            imin = i;
        }
    }
    std::cout << "The minimal number of element = " << imin << std::endl;
}
void sum(double *arr, int sizeOfArray)
{
    double sum = 0.0;
    int k1, k2;
    for(int i = 0; i < sizeOfArray; i++)
    {
        if(arr[i] < 0)
        {
            k1 = i;
            break;
        }
    }
    for(int i = 0; i < sizeOfArray; i++)
    {
        if(arr[i] < 0 && i != k1)
        {
            k2 = i;
            break;
        }
    }
    for(int i = k1+1; i < k2; i++)
        sum += arr[i];
    std::cout << "Summ = " << sum << std::endl;
}
void conversion(double *arr, int sizeOfArray)
{
    double *temp = new double [sizeOfArray];
    int k = sizeOfArray - 1, count = 0;
 
        for(int j = 0; j < sizeOfArray; j++)
        {
            if(fabs(arr[j]) > 1.0)
            {
                temp[count] = arr[j];
                arr[j] = arr[k];
                arr[k] = 0;
                k--;
                count++;
            }
        }
    
    for(int i = count, j = 0; i < sizeOfArray, j < count; i++, j++)
    {
        if(arr[i] == 0)
        {
            arr[i] = temp[j];
        }
    }
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru