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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Механизм возврата ссылки на переменную http://www.cyberforum.ru/cpp-beginners/thread124387.html
Здравствуйте! Не совсем понятен механизм возвращения из функции типа "ссылка на.." и использование функции в выражениях в качестве левого, от знака равно операнда. трудности с пониманием и восприятием. может ли кто нибудь объяснить что это, с чем едят, как происходит и зачем применяют??? п.с. как я понимаю: например есть такой код int x; int& retx() {
C++ <iostream.h> подскажите как заменить или где скачать библиотеку <iostream.h> для visual studio 2008 http://www.cyberforum.ru/cpp-beginners/thread124386.html
функция для создания двухмерного массива C++
Здравствуйте!!! у меня такая проблема. Есть char ** ngBoard, есть void NewBoard(char ** Board) { Board = new char*; for (int i=0; i<10; i++) Board = new char; } но почемуто функция не создает в памяти массив по передаваемой ссылке, т.е. ссылка пустая и при обращении идет ошибка.
Сортировка русскиих букв C++
Возникла надобность сортировать слова с русскими буквами.Млин. Знаю что проблема русского языка в с++ стоит особняком.. char p ='п'; cout <<(int)p; -17 cin >>p; cout <<(int)p; -81 почему разные коды? И к тамуже если я ввожу я ,то код -1 а этого не должно быть т.К. Это eof .Сортировка думаю будет пахать норм.Еще непробовол..
C++ Как узнать длину числа? http://www.cyberforum.ru/cpp-beginners/thread124340.html
Всем привет :) Интересует такой вопрос: как можно узнать длину числа(колличество цифр в нём)? Т.е. записать длину в отдельную переменную. К примеру a = 124; и как скажем в переменную buf занести тогда число 3 и т.д.
C++ Сортировка и запись в файл Помогите разобраться как решить задачу.... Пробывал ничего не получилось Создайте программу, которая вводит с клавиатуры элементы массива структур(не более 20 элементов). Каждый элемент массива содержит три поля: символьные(фамилия длиной не более 15 символов) и два вещественных (доход и расход) Программа должна отсортировать и вывести в файл элементы массива (построчно) в порядке возрастания... подробнее

Показать сообщение отдельно
robert19
25 / 25 / 3
Регистрация: 26.03.2010
Сообщений: 305

Напишите функцию, упорядочивающую элементы массива по сумме первого и второго поля, которая записывается в третье поле, в порядке возрастания - 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 минуты
парни ну что трудно проверить чтоль?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru