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

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

Войти
Регистрация
Восстановить пароль
 
Cutegirl1645
Сообщений: n/a
#1

Написать программу, которая подводит итоги конкурса "5 лучших товаров года". - C++

19.12.2008, 16:13. Просмотров 871. Ответов 1
Метки нет (Все метки)

Здравствуйте, помогите пожалуйста решить задачу.
Написать программу, которая подводит итоги конкурса "5 лучших товаров года". Оценка товара производится по пятибалльной системе. Программа должна получать от пользователя число людей, давших товару определенный бал, вычислить общее количество проголосовавших за данный товар людей и число набранных баллов, и после этого упорядочить список (методом пузырька с простым алгоритмом) в соответствии с набранным количеством баллов. Сортировку оформить в виде функции.

Заранее спасибо!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2008, 16:13     Написать программу, которая подводит итоги конкурса "5 лучших товаров года".
Посмотрите здесь:

Написать программу которая будет "переворачивать слова в обратную строну" - C++
мне нужно написать программу которая будет "переворачивать слова в обратную строну" например : написать программу перевода заданной...

Написать программу, которая устанавливается, и отображается во вкладке "Программы и компоненты" - C++
У меня есть исполняемый файл exe. Код написан на С++. Как я могу написать на С++ программу которая устанавливается в ОС Windows как...

Написать программу, которая методом обмена "пузырька" сортирует по убыванию введенный с клавиатуры одномерный массив - C++
...написать программу, которая методом обмена "пузырька" сортирует по убыванию введенный с клавиатуры одномерный массив

Написать программу,которая находит все слова,в которых буква "а" встречается больше чем один раз. - C++
Есть строка,которая состоит из слов,разделенных любым количеством промежутков.Написать программу,которая находит все слова,в которых буква...

Написать программу, которая определяет, сколько гласных символов введено с клавиатуры и сколько из них "а" - C++
Помогите ребята, очень нужно. написать программу, которая определяет, сколько гласных символов введено с клавиатуры и сколько из них "а" ...

Написать программу, которая "задумывает" число в диапазоне от 1 до 10 и предлагает пользователю угадать число - C++
Кто знает как на С++ можно решить данную задачу при помощи цикла do while? Написать программу, которая "задумывает" число в диапазоне от...

Создать массив структур "Ведомость про участников конкурса" - C++
здравствуйте. Прошу написать программу. Большое спасибо за ваш труд. Условие: Создать массив структур, используя данные из задания....

Написать функцию, которая сортирует переданный ей динамический массив "быстрой" сортировкой - C++
#include <iostream> #include <vector> using namespace std; void qSort( vector <int> &A,int nStart, int nEnd) { int...

Тяжело ли написать утилитку, которая работает как DOS-команда "pause" - C++
Тяжело ли написать утилитку, которая работает как DOS-команда "pause", но с автопродолжением через (например) 10 секунд? Научился...

Написать функцию, которая в массиве char ищет цифры и заменяет их символом "#" - C++
Простите за наглость... Но в С++ вообще плыву. Просьба - помогите пожалуйста в написании программки, если вас не слишком затруднит...!!! ...

Написать и протестировать функцию,которая "переворачивает" строку,передаваемую ей в качестве параметра - C++
Написать и протестировать функцию,которая "переворачивает" строку,передаваемую ей в качестве параметра

Написать и протестировать функцию compress(), которая "сжимает" строку, удаляя из нее все пробелы. - C++
Добрый вечер))не могли бы вы мне помочь с задачками,они в принципе лёгкие ,мы только начали изучать Си++ ,но я уже не понимаю,если не...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
accept
4820 / 3240 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
19.12.2008, 20:37     Написать программу, которая подводит итоги конкурса "5 лучших товаров года". #2
узкий момент

Код
 
#include <stdio.h>

typedef struct {
    char *name;
    int mark;
} Product;

Product *bubble_struct(Product *, int, int, int);

/* упорядочивает список товаров методом пузырька в соответствии
   с набранным количеством баллов (пример) */
main()
{
    int i;
    Product list[] = {
        { "tv", 65 },
        { "carpet", 12 },
        { "arm-chair", 28 },
        { "desk", 10 },
        { "cup", 7 },
        { "journal", 70 }
    };
    
    printf("Product:\n");
    for (i = 0; i < 6; i++)
        printf("%15s %3d\n", list[i].name, list[i].mark);
    bubble_struct(list, 0, 5, '<');
    putchar('\n');
    printf("Sorted:\n");
    for (i = 0; i < 6; i++)
        printf("%15s %3d\n", list[i].name, list[i].mark);
    return 0;
}

/* bubble_struct:  сортировка пузырьковым методом; частный случай */
Product *bubble_struct(Product *a, int m, int n, int side)
{
    char is = 1;
    int i;
    Product c;
    
    while (is) {
        is = 0;
        for (i = m+1; i <= n; i++)
            if (side == '>' ?
                            a[i].mark < a[i-1].mark :
                            a[i].mark > a[i-1].mark) {
                c = a[i];
                a[i] = a[i-1];
                a[i-1] = c;
                is = 1;
            }
    }
    return a;
}

/* bubble:  сортировка пузырьковым методом */
int *bubble(int *a, int m, int n)
{
    char is = 1;
    int i, c;
    
    while (is) {
        is = 0;
        for (i = m+1; i <= n; i++)
            if (a[i] < a[i-1]) {
                c = a[i];
                a[i] = a[i-1];
                a[i-1] = c;
                is = 1;
            }
    }
    return a;
}
вывод
Код
[guest@localhost tmp]$ ./test
Product:
             tv  65
         carpet  12
      arm-chair  28
           desk  10
            cup   7
        journal  70

Sorted:
        journal  70
             tv  65
      arm-chair  28
         carpet  12
           desk  10
            cup   7
[guest@localhost tmp]$
update:
теперь сортирует с направлениями от меньшего к большему и наоборот от большего к меньшему
скорость чуток падает, зато вывод одинаковый
Yandex
Объявления
19.12.2008, 20:37     Написать программу, которая подводит итоги конкурса "5 лучших товаров года".
Ответ Создать тему
Опции темы

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