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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
robert19
25 / 25 / 3
Регистрация: 26.03.2010
Сообщений: 305
#1

Напишите функцию, упорядочивающую элементы массива по сумме первого и второго поля, которая записывается в третье поле, в порядке возрастания - C++

02.05.2010, 15:19. Просмотров 637. Ответов 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
50
51
52
#include<stdlib.h>
#include <string.h>
#include <stdio.h>
 
struct MyStruct{ //структура с тремя целочисленными полями
int x;
int y;
int b;
};
//функция, осуществляющую ввод значений в элементы массива с консоли
void input(int n, MyStruct* mas){
for(int i=0; i<n; i++){
printf("mas[%i].x: ",i);
scanf("%i",&mas[i].x);
printf("mas[%i].y: ",i);
scanf("%i",&mas[i].y);
}
return;
}
//функция, определяющую структуру b
int Summ(int n, MyStruct* mas){
 
for(int i=0; i<n; i++){
mas[i].b = mas[i].x + mas[i].y;
}
for (int i=0; i<n; i++){
    printf("%i  ",mas[i].b);
}
return 0;
}
//сортировка по возростанию
int Sort(int n, MyStruct* mas){
    for (int i=0; i<n; i++){
        for(int j=i; j<n; j++){
            if(mas[i].b > mas[j].b){
                MyStruct temp = mas[i]; mas[i]=mas[j]; mas[j] = temp;
            }
        }
        printf("%i  ",mas[i].b);
    }
return 0;
}
 
int main(){
const int size = 5;
MyStruct masMyStruct[size]; 
input(size, masMyStruct);
Sort(size, masMyStruct);
printf("%i\n", Summ(size, masMyStruct));
printf("%i\n", Sort(size, masMyStruct));
return 0;
}
Добавлено через 1 час 44 минуты
парни ну что трудно проверить чтоль?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.05.2010, 15:19     Напишите функцию, упорядочивающую элементы массива по сумме первого и второго поля, которая записывается в третье поле, в порядке возрастания
Посмотрите здесь:
Создать функцию которая выведет элементы в убывающем порядке, и покажет произведение первого и последнего элемента массива C++
Напишите функцию, которая выводит элементы в следующем порядке: C++
Напишите функцию, которая выводит его элементы в следующем порядке: C++
C++ Написать функцию, сортирующую в порядке возрастания элементы одномерного массива
Дан массив A размера N. Напишите функцию, которая выводит его элементы в следующем порядке: C++
C++ Описать функцию, которая определяет, входят ли все элементы первого списка в состав второго списка.
C++ Реализовать функцию, которая переписывает элементы входного массива в обратном порядке
C++ Получить третий массив C[15] по правилу: вначале элементы первого массива, затем элементы второго массива
C++ Упорядочить элементы массива в порядке возрастания, все элементы больше нуля увеличить в 3 раза
Отрицательные элементы массива А(N) переставить в начало массива и расположить их в порядке возрастания C++
C++ Расставить элементы массива в порядке возрастания
C++ Упорядочить элементы массива в порядке возрастания

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
robert19
25 / 25 / 3
Регистрация: 26.03.2010
Сообщений: 305
02.05.2010, 15:29  [ТС]     Напишите функцию, упорядочивающую элементы массива по сумме первого и второго поля, которая записывается в третье поле, в порядке возрастания #2
Я просто не понимаю от куда берутся эти числа:
Миниатюры
Напишите функцию, упорядочивающую элементы массива по сумме первого и второго поля, которая записывается в третье поле, в порядке возрастания  
Ответ Создать тему
Опции темы

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