Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Depressa
3 / 3 / 0
Регистрация: 26.11.2011
Сообщений: 84
1

задача на массивы

26.11.2011, 21:24. Просмотров 399. Ответов 4
Метки нет (Все метки)

здравствуйте, не могли бы помочь
есть задание написать функцию которая сортирует по убыванию массив( сортировка пузырьком)
получился такой код
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; 
}


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

Задача на массивы
Дан массив размером n*n,элементы которого целые числа.Вычислить А^n,где...

Задача на массивы
Дана действительная квадратная матрица порядка 12. Заменить нулями все ее...

Задача на массивы.
Помогуте сделать задачи по массивам! 1.Написать функцию, которая возвращает...

задача на массивы
Заданы две матрицы А и В размером N x N. Сформировать из них прямоугольную...

Задача на массивы
Удалить из массива M(25) все элементы, значения которых в этом массиве,...

4
ZaVyLoN
84 / 84 / 20
Регистрация: 26.10.2009
Сообщений: 269
26.11.2011, 21:42 2
Цитата Сообщение от Depressa Посмотреть сообщение
if (a[ii-1]<a[ii])
Поменяй знак на больше.
1
BRcr
4020 / 2310 / 291
Регистрация: 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 - искомое.
1
Depressa
3 / 3 / 0
Регистрация: 26.11.2011
Сообщений: 84
26.11.2011, 23:48  [ТС] 4
спасибо большое
0
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;
    }
0
28.11.2011, 17:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.11.2011, 17:08

Задача на массивы
Дана матрица размерностью N на M, где большинство элементов равно 0. Нужно все...

задача на массивы
Пользователь вводит число (количество знаков не определено). Если в это числе...

задача на массивы
1) Имеется массив данных о возрасте и поле сотрудников. Определить общее...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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