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

Маленькая ошибка - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Создание списка http://www.cyberforum.ru/cpp-beginners/thread1032348.html
С помощью процедуры rand генерируются N случайных чисел. Числа, меньшие, чем RAND_MAX/3, помещаются в начало очереди класса «deque», числа, большие, чем 2*RAND_MAX/3, - в конец очереди, промежуточные числа - в середину; полученная очередь выводится в файл в обратном порядке. Я написал,но выводит ошибку в 30 строчке.Подскажите,что не так:
C++ Из массива удалить последний из нечетных элементов Помогите,пожалуйста! Из массива удалить последний из нечетных элементов. Как пример: из массива source: 1 3 4 5 6 должен получиться массив result: 1 3 4 6. Требования: Интерфейс программы в виде консольного меню реализуется в главной функции Main(). Консольный ввод и вывод массива реализуется отдельными функциями соответственно InputArray() и ShowArray(). Файловый ввод и вывод массива... http://www.cyberforum.ru/cpp-beginners/thread1032331.html
C++ случайные значения в с++
Подскажите, пожалуйста. Есть 3 заданные числа. Как сделать так, чтобы генерировалися толко заданые??? Я написал свой пример, но там всегда выдаёт значение 1. int funx(){ int xxx=150 || 160 || 170; return xxx; }
Вывести матрицу, заполненную рандомными числами C++
Нужно вывести двумерный массив, заполненный рандомными числами, а выводит массив, заполненный одним рандомным числом, как это исправить? вот код #include <iostream> #include <stdlib.h> #include <ctime> using namespace std; int main() {
C++ Объединение двух програм http://www.cyberforum.ru/cpp-beginners/thread1032324.html
Здравствуйте, нужно объединить 2 программы в одну: Программа 1: #include <stdlib.h> #include <stdio.h> #include <string.h> #include <gl\glut.h> #include <conio.h> GLint Width = 520, Height = 520; double yMax1, yMax2;
C++ Матрица (Подсчитать количество положительных элементов в каждой строке) Задача Подсчитать количество положительных элементов в каждой строке матриц A і B. Не знаю как это сделать, подскажите пожалуйста, вот начало: #include <iostream> #include <iomanip> using namespace std; void main() подробнее

Показать сообщение отдельно
Jurlique
0 / 0 / 0
Регистрация: 13.11.2013
Сообщений: 46
07.12.2013, 20:43     Маленькая ошибка
C++ (Qt)
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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
#include<iostream>
#include <stdio.h>
#include <string.h>
 
using namespace std;
 
bool myfunc(char x [], char x1 []);
bool family(char *y, char *y1);
 
struct NOTE{
 
    char surname[50];
    char phone[50];
    int day[3];
 
};
 
int main()
{
    const int n = 8;
    int i = 0;
    NOTE m[n];
    for (i = 0; i < n; i++)
    {
 
        cin >> m[i].surname;
        cin >> m[i].phone;
        cin >> m[i].day[0];
        cin >> m[i].day[1];
        cin >> m[i].day[2];
 
    }
 
    for (i = 0; i < n - 1; i++){
 
        for (int j = i + 1; j < n; j++){
 
            if (family(m[i].phone, m[j].phone)){
 
                NOTE y = m[i];
                m[i] = m[j];
                m[j] = y;
 
            }}}
 
    for (i = 0; i < n; i++){
 
        cout << m[i].surname << ' ';
        cout << m[i].phone << ' ';
        cout << m[i].day[0] << ' ' << m[i].day[1] << ' ' << m[i].day[2] << endl;
 
    }
 
    char name[50];
    cin >> name;
    bool done = false;
 
    for (i = 0; i < n; i++){
    
        if (myfunc(m[i].surname, name)){
 
            cout << m[i].surname << ' ';
            cout << m[i].phone << ' ';
            cout << m[i].day[0] << m[i].day[1] << m[i].day[2] << ' ';
 
            done = true;
 
        }}
 
    return 0;
 
}
 
bool family(char *y, char *y1){
 
    int i = 0;
    while (y[i] != '/0' && y1[i] != '/0'){
 
        if ((int) y[i] > (int) y1[i]) return true;
        else if ((int) y[i] < (int) y1[i])return false;
        i++;
 
    }
 
    return false;
 
}
 
bool myfunc(char x [], char x1 []){
 
    if (strlen(x) == strlen(x1)){
 
        int i = 0;
        while (x[i] != '\0') {
 
            if (x[i] != x1[i]) return false;
            i++;
 
        }
 
        return true;
    }
 
    else return false;
 
}
Входные данные
Sidorova 5462091 11 05 1981
Bobrova 2987432 30 12 1992
Smirnov 9927936 25 11 1990
Petrov 7884153 13 04 1978
Borisova 1233728 21 06 1985
Moskvina 4564352 03 10 1988
Aleksandrov 3011765 07 05 1980
Ivanov 3744432 01 05 1977
Ivanov

У меня получается
Borisova 1233728 21 6 1985
Bobrova 2987432 30 12 1992
Aleksandrov 3011765 7 5 1980
Ivanov 3744432 1 5 1977
Moskvina 4564352 3 10 1988
Sidorova 5462091 11 5 1981
Petrov 7884153 13 4 1978
Smirnov 9927936 25 11 1990
Ivanov 3744432 151977

Верный результат
Borisova 1233728 21 6 1985
Bobrova 2987432 30 12 1992
Aleksandrov 3011765 7 5 1980
Ivanov 3744432 1 5 1977
Moskvina 4564352 3 10 1988
Sidorova 5462091 11 5 1981
Petrov 7884153 13 4 1978
Smirnov 9927936 25 11 1990
Ivanov 3744432 1.5.1977
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 23:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru