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

Вычислить произведение отрицательных элементов массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Дана строка, нужно символ в этой строке заменить ее порядковым номером. http://www.cyberforum.ru/cpp-beginners/thread751796.html
2) дана строка, нужно символ в этой строке заменить ее порядковым номером. помогите пожалуйста.
C++ Нужно инвертировать вторую половину строки. 1) нужно инвертировать вторую половину строки. помогите пожалуйста. http://www.cyberforum.ru/cpp-beginners/thread751794.html
Перевести код с Pascal C++
uses crt; const nmax=20; var a:array of integer; n,i,d:integer; f:boolean; begin repeat write('Размер массива до ',nmax,' n='); read(n); until n in ;
C++ Определить координаты вершин прямоугольного треугольника
определить координаты вершин прямоугольника наименьшего периметра содержащего треугольник координаты вершин котрого (x1,y1), (x2,y2), (x3,y3) не могу математически даже вникнуть в условие....
C++ Сравнение и замена символов http://www.cyberforum.ru/cpp-beginners/thread751778.html
У меня есть файл с которого я считываю информацию массив. Если встречается определенный символ то мне нужно заменить его на другой. И самой главное мне нужно уже обработанный текст со всеми заменами...
C++ Определить общее количество осадков за этот год Занести из файла в массив сведения о количестве осадков, выпавших за каждый из 12 месяцев одного года. Определить общее количество осадков за этот год, среднемесячное количество осадков, количество... подробнее

Показать сообщение отдельно
Croessmah
Эксперт CЭксперт С++
13416 / 7570 / 855
Регистрация: 27.09.2012
Сообщений: 18,639
Записей в блоге: 3
Завершенные тесты: 1
05.01.2013, 09:25
Цитата Сообщение от Serdox Посмотреть сообщение
Croessmah, А ты не мог бы прокомментировать хотя бы основные функции
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
#include <iostream>
#include <cstdlib>
#include <ctime>
//Функция "переворачивает" массив
void reverse(int *arr, size_t size){
    int *arrend=arr+size-1;
    int temp;
    while(arr<arrend){
        temp=*arr;
        *arr=*arrend;
        *arrend=temp;
        --arrend; ++arr;
    }
}
//Функция возвращает индекс максимального элемента массива
int GetMaxIndex(int * arr,int size){
    int maxindex=0;
    for(int i=1;i<size;maxindex=arr[i]>arr[maxindex]?i:maxindex,++i);
    return maxindex;
}
//Функция возвращает произведение отрицательных элементов массива
int foo1(int * arr,int size){
    int mult=1;
    for(int i=0;i<size;mult*=arr[i]<0?arr[i]:1,++i);//mult*=arr[i]<0?arr[i]:1 - если arr[i] отрицательный, то mutl*=arr[i], иначе mult умножается на 1, то есть не изменяется
    return mult;
}
 
//Функция фозвращает сумму положительных элементов массива
int foo2(int * arr,int size){
    int summ=0;
    for(int i=0;i<size;summ+=arr[i]>0?arr[i]:0,++i);//По аналогии с foo1
    return summ;
}
//Функция вывода массива на консоль
void show(int * arr,int size,bool endline=true){
    for(int i=0;i<size;++i)
        std::cout<<arr[i]<<" ";
    if(endline) std::cout<<std::endl;
}
//Функция заполнения массива псевдослучайными числами
void fillrandom(int * arr,int size,int max,int min){
    srand(time(NULL));//Инициализируем генератор текущим временем
    for(int i=0;i<size;++i)
        arr[i]=rand()%(max-min+1)+min;//Генерируем число [min;max]
}
 
int main(){
    const int n=15;//Размер массива
    int arr[n];
    fillrandom(arr,n,10,-10);//Заполняем массив
    show(arr,n);//Выводим массив
    std::cout<<"1) "<<foo1(arr,n)<<std::endl;//Выводим результат выполнения функции foo1
    std::cout<<"2) "<<foo2(arr,GetMaxIndex(arr,n))<<std::endl;////Выводим результат выполнения функции foo1. В качестве размера передаем индекс максимального элемента, для ограничения.
    std::cout<<"3) ";
    reverse(arr,n);//Переворачиваем массив
    show(arr,n);//Выводим массив на консоль.
    return 0; 
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru