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

Своя структура и поиск минимального значения - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Стеганография в аудиофайлах http://www.cyberforum.ru/cpp-beginners/thread1698454.html
задали написать программу, прячущую сообщение в аудиофайл, а я не представляю, как это можно реализовать на C++ Добавлено через 1 час 16 минут На входе вав файл и сообщение, на выходе вав файл, который проигрывается. На входе второй программы вав файл от первой, а на выходе сообщение.
C++ Объясните синтаксис кода здравствуйте, есть код с просторов интернета: namespace example { template<typename Tag> struct result { /* export it ... */ typedef typename Tag::type type; static type ptr; }; http://www.cyberforum.ru/cpp-beginners/thread1698439.html
C++ Управление не переходит в конструктор односвязного списка
В коде ниже представлена реализация односвязного списка.Нам дали только прототипы функций,написать им тела надо было самим. Так вот ,мой вопрос. В классе есть 3 конструктора.прошла отладчиком прогу и заходит только в конструктор с двумя параметрами. В конструктор без значений и с одним значением не заходит.Спрашивается,зачем они тогда нужны? P.S. в качестве конца списка использован не NULL ,а...
C++ Неявное связывание DLL
Нид хелп разобраться. Необходимо сделать приложение, которое будет использовать функцию из неявно связываемой библиотеки. Скорее всего, я что то не так понял или не понял вовсе, потому что ничего не работает) 1. Создаю проект c названием Test , Win 32 с типом проекта библиотека DLL. Создаю пустой проект. 2. Создаю модуль L.cpp, в нем пишу функцию DLLMain. 3. В том же модуле, ниже функции...
C++ Найти в тексте первое слово состоящее из наибольшего количества цифр http://www.cyberforum.ru/cpp-beginners/thread1698409.html
Формулировка задачи:Найти в тексте первое слово - целое число, состоящее из наибольшего количества цифр (числа заданы последовательностью цифр). Если слов-чисел в тексте нет, то вывести сообщение об этом. Не могу понять , почему не учитывается последний символ, столько раз переправлял программу, что кажется запутался в циклах. Помогите найти ошибку или показать как нужно сделать. #include...
C++ Цикл ввода строкового массива работает не так, как нужно Объясните пожалуйста, почему цикл выполняется на один раз меньше числа, которое мы вводим с клавиатуры. То есть если я введу число 5, то смогу ввести только 4 строки void sozdanie () int l, i; char x, c; cout << "\nВведите имя файла"; cin >> x; cout << "\nВведите желаемое число строк\n"; cin >> l; cout << "\nВведите строки\n"; for (i = 0; i < l; i++) { подробнее

Показать сообщение отдельно
Aymurat
90 / 84 / 25
Регистрация: 07.11.2014
Сообщений: 572
Завершенные тесты: 5
30.03.2016, 08:35     Своя структура и поиск минимального значения
Почему int i = 1, если структура индексируется с 0?
Почему
Цитата Сообщение от SlashX6 Посмотреть сообщение
C++
1
for (; i <= AmountOfCompanys; i++)
{
Думаю, здесь должно быть i<AmountOfCompanys
i = 0 должна быть.
38-43 строчки, вы ищете минимальную плату, используете i, значение которого и так равна AmountOfCompanys-1
Раз уж так - создавайте переменную только внутри цикла,
C++
1
2
for(int i = 0; i < AmountOfCompanys; i++) {...}//здесь, вне скобки уже нет переменной i, начинаем подбор
for (int i = 0; i < ....){..} // и т.д.
Цитата Сообщение от SlashX6 Посмотреть сообщение
C++
1
float minAmountOfTaxes = payedTaxes[0].payedTaxesAmount;
Вы индексируете с 1, а запрашиваете 0... Как так?)

Добавлено через 3 минуты
Цитата Сообщение от Aymurat Посмотреть сообщение
C++
1
float minAmountOfTaxes = payedTaxes[0].payedTaxesAmount;
Здесь скорее всего должно быть максимальное значение для float, ведь вы находите минимум...

Добавлено через 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
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <conio.h>
 
using namespace std;
 
struct companyStats {    // тут показывает восклицательный знак
    int companyId;
    char companyName[50];
    float payedTaxesAmount;
};
 
int main() {
    int AmountOfCompanys = 1;
    cout << "Enter the amount of companys you would like to register: ";
    cin >> AmountOfCompanys;
    cout << endl;
 
    companyStats * payedTaxes = new companyStats[AmountOfCompanys]; // тут показывает ошибку
 
    for (int i = 0; i < AmountOfCompanys; i++) {
        cout << "Please enter ID number for company Nr. " << i+1 << " ";
        cin >> payedTaxes[i].companyId;
        cout << endl;
        cout << "Please enter NAME for company Nr. " << i+1 << " ";
        cin.get();
        cin.getline(payedTaxes[i].companyName, 50);
        cout << endl;
        cout << "Please enter payed TAXES AMOUNT for company Nr. " << i+1 << " ";
        cin >> payedTaxes[i].payedTaxesAmount;
    }
 
    float minAmountOfTaxes = 3.402823466E+38;
    char minTaxCompanyName[50];
    for (int i = 0; i < AmountOfCompanys; i++) {
        if (payedTaxes[i].payedTaxesAmount < minAmountOfTaxes) {
            minAmountOfTaxes = payedTaxes[i].payedTaxesAmount;
            strcpy(minTaxCompanyName, payedTaxes[i].companyName);
        }
    }
 
    cout << "---------------" << endl;
    cout << "Company Name that payed the smallest amount of taxes is: " << minTaxCompanyName << endl;
 
    system("pause");
    return 0;
}
 
Текущее время: 10:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru