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

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

Войти
Регистрация
Восстановить пароль
 
Aleksashka
0 / 0 / 0
Регистрация: 14.11.2011
Сообщений: 38
#1

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

16.07.2012, 19:00. Просмотров 465. Ответов 4
Метки нет (Все метки)

Предусмотреть вывод значений для полей элементов массива записей по следующим критериям: дата, предмет судебного разбирательства, название фирмы-истца, название фирмы-обвиняемого. Определить, в каком году было больше всего дел, связанных с мошенничеством
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.07.2012, 19:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Определить, в каком году было больше всего дел, связанных с мошенничеством (C++):

По результатам метеорологических исследований за январь месяц 1990-1999 годов, определить в каком году было бо - C++
Структуры и объединения По результатам метеорологических исследований за январь месяц 1990-1999 годов, определить в каком году было...

Определить в каком столбце матрицы больше всего элементов кратных 7 - C++
1.определить в каком столбце матрицы больше всего элементов,кратных 7 и обнулить,его элементы.

Найти, из какой школы (школ) было больше всего участников олимпиады - C++
Прошу помощи. Болел - ничего не понял. Скоро экзамен, а я ничего не понимаю в С++. Дали примерные задачи, а я не понимаю как решать. Вот...

Вложенные циклы. Определить, в каком году общий урожай, собранный за все время, превысит 800 центнеров - C++
В некотором году (назовем его условно первым) на участке 100 гектаров средняя урожайность ячменя составила 20 центнеров с гектара. После...

Определить, в каком доме необходимо установить АТС, чтобы расстояние до всех телефонов было минимальным - C++
В поселке N домов, расположенных вдоль дороги с одной стороны на равных расстояниях. В деревне проводят телефонную связь.Указано , сколько...

Определить в каком из множеств встречается больше цифр - C++
Как определить где из 3 множест больше цифр? через указатели.. хелп(

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
David Sylva
1286 / 948 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
16.07.2012, 19:03 #2
Такая тема есть чуть ниже.
0
Aleksashka
0 / 0 / 0
Регистрация: 14.11.2011
Сообщений: 38
16.07.2012, 21:43  [ТС] #3
Вот задание:
Предусмотреть вывод значений для полей элементов массива записей по следующим критериям: дата, предмет судебного разбирательства, название фирмы-истца, название фирмы-обвиняемого. Определить, в каком году было больше всего дел, связанных с мошенничеством

Вот код
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
85
86
87
88
89
90
91
92
#include "stdafx.h"
#include "iostream"
#include "string.h"
using namespace std;
typedef struct
{
    int data;
    char predmet[100];
    char NFI[150];
    char NFO[150];
} baza;
baza BD[100];
int count=0;
void InputData()
{
    cout<<"Enter data";
    cin>>(BD[count].data);
    cout<<"Enter predmet\n";
    cin.getline(BD[count].predmet,100);
    cout<<"Enter NFI\n";
    cin.getline(BD[count].NFI,150);
    cout<<"Enter NFO\n";
    cin.getline(BD[count].NFO,150);
    count++;
}
 
void SearchMax()
{
    int a [5];
    for (int i=0;i<5;i++){
        a[i]=0;
    }
    for (int j=0;j<count;j++)
    {
        if(BD[j].predmet=="moshennichestvo")
        {
            int year=BD[j].data;
            switch(year)
            {
            case 2012: a[0]=a[0]+1;
                case 2011: a[1]=a[1]+1;
                    case 2010: a[2]=a[2]+1;
                        case 2009: a[3]=a[3]+1;
                            case 2008: a[4]=a[4]+1;
            }
        }
    }
    int maximum = a[0];
    int b=0;
    for (int i=1;i<5;i++){
            if(a[i]>maximum)
            {
                int b=i;
            }
            else int b=0;
 
            switch (b)
        {
        case 0: cout<<"Bolshe vsego del,svyazannyh c moshennichestvom bylo v 2012 godu";
            case 1: cout<<"Bolshe vsego del,svyazannyh c moshennichestvom bylo v 2011 godu";
                case 2: cout<<"Bolshe vsego del,svyazannyh c moshennichestvom bylo v 2010 godu";
                    case 3: cout<<"Bolshe vsego del,svyazannyh c moshennichestvom bylo v 2009 godu";
                        case 4: cout<<"Bolshe vsego del,svyazannyh c moshennichestvom bylo v 2008 godu";
        }
 
        }
}
 
int UserMenu()
        {
            cout<<"1.Input Data\n";
            cout<<"2.Search\n";
            cout<<"3.Exit\n";
            int k;
            cin>>k;
        return k;
        }
int main()
{
    bool y=true;
    do
    {
        switch(UserMenu())
        {
        case 1:InputData();break;
        case 2:SearchMax(); break;
        case 3:return 0; break;
        }
 
    } while(y=true);
return 0;   
}

Не работает эта часть
C++
1
2
3
4
5
6
7
8
    switch (b)
        {
        case 0: cout<<"Bolshe vsego del,svyazannyh c moshennichestvom bylo v 2012 godu";
            case 1: cout<<"Bolshe vsego del,svyazannyh c moshennichestvom bylo v 2011 godu";
                case 2: cout<<"Bolshe vsego del,svyazannyh c moshennichestvom bylo v 2010 godu";
                    case 3: cout<<"Bolshe vsego del,svyazannyh c moshennichestvom bylo v 2009 godu";
                        case 4: cout<<"Bolshe vsego del,svyazannyh c moshennichestvom bylo v 2008 godu";
        }
Выводит все подряд, а не то, что нужно
0
Troll_Face
600 / 400 / 4
Регистрация: 26.04.2012
Сообщений: 2,070
16.07.2012, 21:52 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
switch (b)
        {
        case 0: cout<<"Bolshe vsego del,svyazannyh c moshennichestvom bylo v 2012 godu";
                          break;
            case 1: cout<<"Bolshe vsego del,svyazannyh c moshennichestvom bylo v 2011 godu";
                          break;
                case 2: cout<<"Bolshe vsego del,svyazannyh c moshennichestvom bylo v 2010 godu";
                          break;
                    case 3: cout<<"Bolshe vsego del,svyazannyh c moshennichestvom bylo v 2009 godu";
                          break;
                        case 4: cout<<"Bolshe vsego del,svyazannyh c moshennichestvom bylo v 2008 godu";
        }
0
Fooly
21 / 17 / 1
Регистрация: 26.03.2012
Сообщений: 147
16.07.2012, 22:04 #5
после каждой строчки нужно вставить break, а также у тебя цикл какой-то странный. Я не компилировал программу твою, но если допустим a[2]>maximum, b станет равным 2, но т.к у тебя цикл не остановился, то есть шанс, что на последующих этапах b обнулится. Так и доложно работать?

Добавлено через 8 минут
Исходя из твоего куска кода, у тебя b всегда будет равным 0, если я не ошибаюсь и как следствие, всегда будет выводится первый пункт (case 0)
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
 int a [5];
    for (int i=0;i<5;i++){
        a[i]=0;
    }
    for (int j=0;j<count;j++)
    {
        if(BD[j].predmet=="moshennichestvo")
        {
            int year=BD[j].data;
            switch(year)
            {
            case 2012: a[0]=a[0]+1;
                case 2011: a[1]=a[1]+1;
                    case 2010: a[2]=a[2]+1;
                        case 2009: a[3]=a[3]+1;
                            case 2008: a[4]=a[4]+1;
            }
        }
    }
    int maximum = a[0];
    int b=0;
    for (int i=1;i<5;i++){
            if(a[i]>maximum)
            {
                int b=i;
            }
            else int b=0;
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.07.2012, 22:04
Привет! Вот еще темы с ответами:

Определить в каком из двух чисел больше цифр - C++
Составить программу, определяющую, в каком из данных двух чисел больше цифр. Использовать функцию вычисления количества цифр в числе....

Определить, в каком из массивов больше положительных элементов - C++
Даны два массива из n целых чисел каждый. Определить, в каком из них больше положительных элементов. Пример ввода (формат...

Определить номер дня недели для K-го дня года, если известно, что в этом году 1 января было вторником. - C++
Задача на С++ Вот условие: Дни недели пронумерованы следующим образом: 1 — понедельник, 2 — вторник, … , 6 — суббота, 7 — воскресенье....

Определить, в каком из двух целых чисел больше цифр - C++
Составить программу решения задачи с использованием подпрограмм. Определить, в каком из данных двух целых чисел больше цифр.


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
16.07.2012, 22:04
Ответ Создать тему
Опции темы

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