Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
2 / 2 / 0
Регистрация: 28.06.2019
Сообщений: 129
Записей в блоге: 3

Проблема ввода в консоль данных

18.08.2019, 18:10. Показов 700. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть программа для ввода параметров начальных условий, все просто в ней, но почему я могу ввести всего 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
#include <stdio.h>
#include <conio.h>
#include <windows.h>
#include <stdlib.h>
#include <fstream.h>
 
//---------------------------------------------------------------------------
int main()
{
SetConsoleOutputCP(1251);
    ofstream fout;
    short z250, z251, z253, z280, z281,  z282, z283, z284, z254, z285;
    long z260, z261, z252;
    printf("###############################   ver. 0.01\n");
    printf("# ПРОГРАММА ВВОДА НАЧАЛЬНЫХ УСЛОВИЙ  #\n");
    printf("###############################\n");
    printf("\n");
    Sleep(300);
    printf("Установка связи с файлом-обмена");
    fout.open("C:/out.txt");
    //Проверяем наличие файла-обмена, квитанции и контрольной суммы, и подгружаем его
    printf("Активировать динамическую связь с ИнПУ? (Д/Н) ");
    //Ес
    printf("\n\n");
    printf("ввод начальных условий вектора состояния\n");
    printf("    Введите долготу восходящего узла: ");
    scanf ("%d", &z250);
    //fout<<z250;
    printf("    Введите значение апогея: ", z250);
    scanf ("%i", &z260);
    printf("    Введите значение перигея: ");
    scanf ("%i", &z261);
    //printf("    Введите аргумент перигея: ");
    //scanf ("%d", &z251);
    printf("    Введите наклонение орбиты: ");
    scanf ("&i", &z252);
    printf("    Введите номер витка: ");
    scanf ("&d", &z253);
    printf("    Введите День ВС: ");
    scanf ("&d", &z280);
    printf("            Месяц ВС: \n");
    scanf ("&d", &z281);
    printf("           Год ВС: \n");
    scanf ("&d", &z282);
    printf("\n");
    printf("    Введите время прохождения восходящего узла ЧАС: \n");
    scanf ("&d", &z283);
    printf("                                               МИН: \n");
    scanf ("&d", &z284);
    printf("                                               СЕК: \n");
    scanf ("&d", &z285);
    printf("\n");
    printf("Параметры верны? (Д/Н)? ");
 
    fout.close();
    getch();
}
Задача программы - ввод параметров начальных условий и сохранить их в файл построчно.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.08.2019, 18:10
Ответы с готовыми решениями:

Прекратить ввод данных в консоль после ввода точки
Нужно, чтобы пользователь вводил символы, а после того, как он ввел точку &quot;.&quot;, программа окончила свою работу int a = 0; ...

Изменение режима работы Test Bench при симуляции, посредством ввода данных в tcl консоль (Vivado)
Здравствуйте! Мой TB может работать в нескольких режимах. На данный момент установка режима производится через изменение значения...

Буфер ввода в консоль
Всем привет! Хочу воспользоваться функцией ReadConsole. Передам ей указатель на некий массив 10 байтов. Однако никто не запрещает...

6
2 / 2 / 0
Регистрация: 28.06.2019
Сообщений: 129
Записей в блоге: 3
18.08.2019, 18:24  [ТС]
вот скрин ошибки.
Вылетает при завершении программы.
Миниатюры
Проблема ввода в консоль данных  
0
Модератор
 Аватар для D1973
9917 / 6454 / 2455
Регистрация: 21.01.2014
Сообщений: 27,395
Записей в блоге: 3
18.08.2019, 18:25
Dima_control, какое отношение этот код имеет к C++ Builder? А если Вам надо разработать консольное приложение именно в этой среде - почему не пользуетесь Билдеровскими возможностями работы с текстовыми файлами?
0
2 / 2 / 0
Регистрация: 28.06.2019
Сообщений: 129
Записей в блоге: 3
18.08.2019, 19:45  [ТС]
Цитата Сообщение от D1973 Посмотреть сообщение
какое отношение этот код имеет к C++ Builder? А если Вам надо разработать консольное приложение именно в этой среде - почему не пользуетесь Билдеровскими возможностями работы с текстовыми файлами?
отношение прямо,я писал его на С++ Builder 4.
Про какие возможности идет речь?
0
Модератор
 Аватар для D1973
9917 / 6454 / 2455
Регистрация: 21.01.2014
Сообщений: 27,395
Записей в блоге: 3
18.08.2019, 19:47
Цитата Сообщение от Dima_control Посмотреть сообщение
Про какие возможности идет речь?
TStringList например...
0
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
18.08.2019, 22:05
Цитата Сообщение от Dima_control Посмотреть сообщение
почему так?
Да потому что, начиная с 36 строки, вы вместо %i, %d стали писать &i, &d, что не одно и то же (по смыслу).
1
2 / 2 / 0
Регистрация: 28.06.2019
Сообщений: 129
Записей в блоге: 3
18.08.2019, 23:38  [ТС]
Цитата Сообщение от nick42 Посмотреть сообщение
Да потому что, начиная с 36 строки, вы вместо %i, %d стали писать &i, &d, что не одно и то же (по смыслу).
чёрт...да спасибо большое!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.08.2019, 23:38
Помогаю со студенческими работами здесь

Язык ввода в консоль
Хотелось бы, чтобы при запуске консоли с ключом /k ?.bat в файле bat помимо прочих была команда устанавливающая ввод пользователя США....

Отдельная строка ввода в консоль
Проблема заключается в том, что в консоль постоянно что-то выводится. Когда я ввожу свою команду - почти после каждого введенного символа...

Цикл WHILE для ввода в консоль
Извините если есть уже такой вопрос. Не пойму почему в моём коде второй цикл while пропускается/не работает Учусь по книге...

Ограничение ввода символов в консоль
Задача такая, есть метод calc который либо складывает либо вычитает два числа. Операцию пользователь выбирает путем ввода необходимого...

Ограничение ввода символов в консоль
Здравствуйте, имеется программа для ввода размера массива, его нижней и верхней границы. Необходимо сделать так, чтобы вводить БУКВЫ или...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru