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

Диномически найти минимальный элемент в структуре - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Поиск, анализ элементов массива http://www.cyberforum.ru/cpp-beginners/thread315452.html
Решите Пожалуйста задачку: Дан целочисленный массив размера N. Проверить, что все числа в массиве x трехзначные. Если да, то вывести -1, если нет — вывести номер первого числа, нарушающего закономерность
C++ В алфавитно-цифровой строке.... написать программу в с/с++ в алфавитно-цифровой строке удвоить каждую букву http://www.cyberforum.ru/cpp-beginners/thread315451.html
C++ Программа замены строк и столбцов
Написать программу, меняющую местами строку квадратной матрицы с минимальной суммой элементов и столбец с максимальной суммой элементов.
C++ Сгенерировать целое число N и набор из N целых чисел,
Сгенерировать целое число N и набор из N целых чисел, который содержит по крайней мере два нуля, в диапазоне (- 23,60). Вывести сумму чисел из данного набора, расположенных между первыми двумя нулями (если первые нули идут подряд, то вывести 0).
Visual C++ С помощью GetClientRect вывести текст в центре окна (MFC) http://www.cyberforum.ru/cpp-beginners/thread315425.html
Помогите с помощью getclientrect вывести текст в центре окна в MFC приложении)))))) #include "stdafx.h" #include "Lab1.h" #include "Lab1Doc.h" #include "Lab1View.h" #ifdef _DEBUG
C++ программа на динамические массивы не могу понять эту тему, а сдать надо завтра :( вот задание Дан одномерный массив, состоящий из 17 вещественных чисел. Создать другой массив, содержащий элементы исходного массива в порядке их следования, пока их сумма не превысит число, введенное с клавиатуры спасибо откликнувшимся! подробнее

Показать сообщение отдельно
IIIa66uMEM6eP
заставил Бендера
 Аватар для IIIa66uMEM6eP
432 / 288 / 10
Регистрация: 05.12.2010
Сообщений: 1,642
Записей в блоге: 6
07.06.2011, 23:17     Диномически найти минимальный элемент в структуре
Написал программу, она определяет самый дешевый бензин из 3 заправок в структуре, проблема с функцией min - которая определяет самый дешевый бензин и возвращает название заправки. Требуется преобразовать эту функцию, что бы можно было создавать больше элементов в структуре (заправок) и успешно сравнивать цену бензина.
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#include <cmath>
#include <clocale>
#include <iostream>
#include <string> 
using namespace std;
// Программа в уже введенной структуре, нахидит и выводит самый дешевый бензин 
// 92,95,98 маркировки на представленных в структуре заправках
struct Zapravki{
               string AZS;
  float        cena_benzina;
  unsigned int marka_benzina;
};
 
 
string min(float x, float y, float z, Zapravki *a)
{   
if ((x<z)&&(x<y)){
return a[0].AZS; // хочу вернуть имя заправки
}
if ((y<z)&&(y<x)){
return a[3].AZS; // хочу вернуть имя заправки  
}
if ((z<y)&&(z<x)){
return a[6].AZS;} // хочу вернуть имя заправки
};
 
int main(int argc, char *argv[])
{
    setlocale (LC_CTYPE, "rus");
// Заполняем структуру
  int n = 9; // количество элементов в структуре
             //по 3 на каждую заправку
  Zapravki *a = new Zapravki[n]; 
// Лукоил
  a[0].AZS = "Лукоил";
  a[0].marka_benzina = 92;
  a[0].cena_benzina = 25.0;
  a[1].AZS = "Лукоил";
  a[1].marka_benzina = 95;
  a[1].cena_benzina = 27.5;
  a[2].AZS = "Лукоил";
  a[2].marka_benzina = 98;
  a[2].cena_benzina = 29.0;
//__________________________________
// Сибнефть
  a[3].AZS = "Сибнефть";
  a[3].marka_benzina = 92;
  a[3].cena_benzina = 24.0;
  a[4].AZS = "Сибнефть";
  a[4].marka_benzina = 95;
  a[4].cena_benzina = 27.0;
  a[5].AZS = "Сибнефть";
  a[5].marka_benzina = 98;
  a[5].cena_benzina = 29.5;
//__________________________________
// Подсолнух
  a[6].AZS = "Подсолнух";
  a[6].marka_benzina = 92;
  a[6].cena_benzina = 23.5;  
  a[7].AZS = "Подсолнух";
  a[7].marka_benzina = 95;
  a[7].cena_benzina = 28.0;
  a[8].AZS = "Подсолнух";
  a[8].marka_benzina = 98;
  a[8].cena_benzina = 30.0;  
//___________________________________  
  cout << "Все запрвки в городе: " << endl << endl;
  
  cout << a[0].AZS << " ; " << a[3].AZS <<" ; "<< a[6].AZS << endl;  
  cout << "Проведенный мониторинг показал, что по данным маркировкам бензина" <<
  " данные автозаправки продают бензин дешевле чем  остальные - по городу" << endl;
cout << endl;
//Поиск дешевого бензина с маркировкой 92,95,98
cout <<"Самый дешевый с маркировкой 92 "<< min(a[0].cena_benzina, a[3].cena_benzina, a[6].cena_benzina, a) << endl;
cout <<"Самый дешевый с маркировкой 95 "<< min(a[1].cena_benzina, a[4].cena_benzina, a[7].cena_benzina, a) << endl;
cout <<"Самый дешевый с маркировкой 98 "<< min(a[2].cena_benzina, a[5].cena_benzina, a[8].cena_benzina, a) << endl;
//____________________________________
  
  cout << endl;
  delete[] a;
 
    system("PAUSE");
    return EXIT_SUCCESS;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 11:55. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru