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

задача на массивы - C++

Восстановить пароль Регистрация
 
Depressa
3 / 3 / 0
Регистрация: 26.11.2011
Сообщений: 83
26.11.2011, 21:24     задача на массивы #1
здравствуйте, не могли бы помочь
есть задание написать функцию которая сортирует по убыванию массив( сортировка пузырьком)
получился такой код
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
#include <iostream> 
#include <stdlib.h> 
using namespace std; 
 
void sort(char* a, int size); 
void mas_out(char* a, int size); 
void mas_in(char* a, int size); 
 
int main(int argc, char *argv[]) 
{ 
    char* mas; 
    int size; 
    cout << "Enter size: "; 
    cin >> size; 
    mas = (char*)malloc(size); 
    mas_in(mas, size); 
    mas_out(mas, size); 
    sort(mas, size); 
    mas_out(mas, size); 
    free(mas); 
    return 0; 
} 
 
void mas_in(char* a, int size) 
{ 
    for (int i=0; i<size; ++i) 
        cin >> a[i]; 
} 
 
void sort(char* a, int size) 
{ 
    for (int i=0; i<size; ++i) 
        for(int ii=size-1; ii>i; --ii) 
        { 
            if (a[ii-1]<a[ii]) 
            { 
                char temp = a[ii-1]; 
                a[ii-1] =  a[ii]; 
                a[ii] = temp; 
            } 
        } 
} 
 
void mas_out(char* a, int size) 
{ 
    for(int i=0; i<size; ++i) 
        cout << (int)a[i] << "(" << a[i] << ") "; 
    cout << endl; 
}


что тут надо изменить чтобы он сортировал по возрастанию?
и буду рад если поможете определиться как скалярно умножить два массива, а так же определить ндекс минимального элемента массива
признателен огромно
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2011, 21:24     задача на массивы
Посмотрите здесь:

задача на массивы C++
Задача на массивы C++
Задача на массивы. C++
задача на массивы. C++
C++ Задача на массивы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ZaVyLoN
 Аватар для ZaVyLoN
83 / 83 / 6
Регистрация: 26.10.2009
Сообщений: 269
26.11.2011, 21:42     задача на массивы #2
Цитата Сообщение от Depressa Посмотреть сообщение
if (a[ii-1]<a[ii])
Поменяй знак на больше.
BRcr
 Аватар для BRcr
4003 / 2292 / 155
Регистрация: 03.02.2011
Сообщений: 5,064
Записей в блоге: 10
26.11.2011, 22:03     задача на массивы #3
Цитата Сообщение от Depressa Посмотреть сообщение
как скалярно умножить два массива
C++
1
2
3
4
5
6
7
#define size 3
int mas_x[size] = {2, 5, 6};
int mas_y[size] = {3, 8, 3};
int dot_product = 0;
for (int i = 0; i < size; i++){
  dot_product += mas_x[i] * mas_y[i];
}
dot_product - искомое скалярное произведение.

Цитата Сообщение от Depressa Посмотреть сообщение
определить ндекс минимального элемента массива
C++
1
2
3
4
5
6
#define size 3
int mas[size] = {2, 5, 6};
int index = 0;
for (int i = 1; i < size; i++){
  if ( mas[i] < mas[i-1] ) { index = i; }
}
index - искомое.
Depressa
3 / 3 / 0
Регистрация: 26.11.2011
Сообщений: 83
26.11.2011, 23:48  [ТС]     задача на массивы #4
спасибо большое
Abylaikhan
-8 / 3 / 0
Регистрация: 14.11.2011
Сообщений: 22
28.11.2011, 17:08     задача на массивы #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include<iostream>
using namespace std;
int main ()
{
    freopen("input.txt","r",stdin);
    freopen("output.txt","w",stdout); 
    int n,i,l,a[100000];
    cin>>n;
    for(i=1;i<=n;i++)
    {
                     cin>>a[i];
                     }
                     for(i=n;i>=1;i--)
                     {
                                      for(l=i-1;l>=1;l--)
                                      {
                                                         if(a[i]<a[l]) {swap(a[i],a[l]);}
                                                         }
                                      cout<<a[i]<<" ";
                                      }
    return 0;
    }
Yandex
Объявления
28.11.2011, 17:08     задача на массивы
Ответ Создать тему
Опции темы

Текущее время: 20:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru