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

Необходимо исправить ошибки - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Напечатать количество “2”, “3”, “4”, “5” из каждой дисциплины. http://www.cyberforum.ru/cpp-beginners/thread128865.html
Напечатать количество “2”, “3”, “4”, “5” из каждой дисциплины. Результаты экзаменационной сессии студентов 1-го курса поданы в виде следующей таблицы (Фамилия)(Вычислительная техника)(Высшая математика)(Геодезия)(Бух. учет) 1.Іванчук С.О. (4) (4) (3) (4) 2.Панченко И.А. (5) (4) (4) (5) 3.Заець О.М. (3) (4) (4) ...
C++ Сформировать новый массив из элементов массива сформировать новый массив из элементов массива М(25), встречающихся в этом массиве только один раз. на Си. заранее спасибо! http://www.cyberforum.ru/cpp-beginners/thread128861.html
В текстовом массиве А$(8) данных, что содержит 8 слов, подсчитать сумму длин элементов что стоят на парных местах C++
В текстовом массиве А$(8) данных, что содержит 8 слов, подсчитать сумму длин элементов что стоят на парных местах.
Структуры. Вывод на дисплей фамилий и номеров групп для всех студентов, имеющих хотя бы одну оценку 2. C++
1. Описать структуру с именем STUDENT, содержащую следующие поля: • NAME - фамилия и инициалы; • GROUP- номер группы; • SES- успеваемость (массив из пяти элементов). 2. Написать программу, выполняющую следующие действия : • ввод с клавиатуры данных в массив STUD1, состоящий из десяти структур типа STUDENT; записи должны быть упорядочены по алфавиту; • вывод на дисплей фамилий и номеров...
C++ заполнить массив http://www.cyberforum.ru/cpp-beginners/thread128842.html
Уже убедилась сегодня, что на форуме есть умнички, может поможете еще с одной задачкой? (Заполнить массив Y нарастающими произведениями элементов массива X).заранее благодарна за помощь в составлении.
C++ Указатели Ребята, помогите доделать задачу. Структуру создал, а дальше не пойму, вот задание: Задача №1. Создать структуру, хранящую информацию о заказах, принимаемых швейным ателье: номер заказа, заказчик, вид пошива, дата приема, стоимость заказа. Создать массив таких структур и заполнить его. Вывести на экран все заказы, принятые в прошлом месяце. Все действия со структурой производить с помощью... подробнее

Показать сообщение отдельно
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
21.05.2010, 08:58     Необходимо исправить ошибки
новая
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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
 
int Read(char *, size_t); 
int CheckInput(const unsigned char *);
int CheckValidity(const unsigned char *);
 
/* запрашивает код в виде abc12 (не acb123) */
int main(void) /* ANSI C89 */
{
    char code[50];
    int validity;
    int retval;
    
        
    do {
    
        while ((retval = Read(code, sizeof code)) != 0)
            ;    
        
        validity = CheckValidity(code);
    
        if (validity == 1)
            printf("Code is valid" "\n");
        else
            printf("Code is invalid" "\n");
    
    } while (validity == 0);
    
    
    return EXIT_SUCCESS;
}
 
int Read(char *line, size_t size)
{
    char *ptr;
    char tmp[50];
    int retval;
        
    
    printf("Enter code: ");
    fflush(stdout);
    
    ptr = fgets(line, size, stdin);
    
    if (ptr == NULL)
        return -1;
        
    
    if (sscanf(line, "%49s", tmp) != 1)
        return -2;
        
    strcpy(line, tmp);
        
        
    retval = CheckInput(line);
    
    if (retval != 0) {
        fprintf(stderr, "error: incorrect input" "\n");
        return -3;
    }
    
    
    return 0;
}
 
int CheckInput(const unsigned char *line)
{
    int nalph, ndig;
        
    
    nalph = ndig = 0;
            
    while (isalpha(*line) != 0) {
        nalph++;
        line++;
    }    
    
    while (isdigit(*line) != 0) {
        ndig++;
        line++;
    }
    
    if (nalph == 0 || ndig == 0 || *line != '\0')
        return -1;
    
    return 0;
}
 
int CheckValidity(const unsigned char *code)
{
    int nalph, ndig;
    const unsigned char *start = code;    
        
    
    nalph = ndig = 0;
    
    while (isalpha(*code) != 0) {
        nalph++;
        code++;
    }    
    
    while (isdigit(*code) != 0) {
        ndig++;
        code++;
    }
    
    
    if (nalph != 3 || ndig != 2)
        return 0;
    
    if (strncmp(start, start+1, 1) >= 0
     || strncmp(start+1, start+2, 1) >= 0)
        return 0;
    
    
    return 1;
}
 
Текущее время: 02:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru