Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
 Аватар для I159
4 / 4 / 1
Регистрация: 09.08.2009
Сообщений: 232

Программа работает не так как заявлено, нужен комментарий.

11.08.2009, 00:24. Показов 1254. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет. Ещё одна проблемка. Списал ещё одну прогу у Дэвиса, продолжаю учить по его книге. Программу дополнил командой удержания панели после вычислений, кириллическим отображением и #include <iostream> using namespace std;. На этот раз обошлось без errors, но программа не производит заявленных операций, а сразу закрывается после попытки внести данные. Я так понимаю, что программа считает, что она уже всё сделала после запуска. Подскажите пож, что я не так написал?


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
//BranchDemo - введите два числа.
//Если первый аргумент больше,
//выполняем операторы первой ветви,
//если меньше - второй
 
#include <conio.h>
#include <stdio.h>
#include <iostream>
using namespace std;
 
#include <windows.h>
char  bufRus[256];
 
char* Rus(const char* text)
{
      CharToOem(text, bufRus);
      return bufRus;
      }
 
int main (int argc, char* pszArgs[])
{
    //вводим первый аргумент...
    int arg1;
    cout << Rus("Введите arg1: ") <<endl;
    
    //...второй
    int arg2;
    cout << Rus("Введите arg2: ") <<endl;
    
    //Оператор условного перехода, принятие решения
    if (arg1 > arg2)
    {
             cout << Rus("аргумент 1 больше чем аргумент 2\n") <<endl;
             }
             else
             {
                 cout << Rus("аргумент 1 не больше, чем аргумент 2\n") <<endl;
                 }
getch();
return 0;
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.08.2009, 00:24
Ответы с готовыми решениями:

Защитить свой протокол от изменений так, чтобы нельзя было незаметно изменить его. Объект CAPICOM.HashedData (нужен комментарий)
Предполагается, что при записи протокола работы скрипта используется подписывание каждой строки протокола таким образом, чтобы учитывалось...

Программа работает не совсем так, как нужно
import java.io.*; public class Pr2{ public static void main(String args) throws FileNotFoundException,...

Программа работает неправильно (не так, как хотелось бы)
Здравствуйте! Есть задача: &quot;Определите, можно ли вычеркнуть из данного массива одно число так, чтобы оставшиеся числа оказались...

8
UNIX-way
 Аватар для Delphin_KKC
712 / 495 / 49
Регистрация: 15.01.2009
Сообщений: 1,720
11.08.2009, 00:29
C++
1
2
3
//вводим первый аргумент...
int arg1;
cout << Rus("Введите arg1: ") <<endl;
И где тут ввод?
Вот так:
C++
1
2
3
4
//вводим первый аргумент...
int arg1;
cout << Rus("Введите arg1: ") <<endl;
cin >> arg1;//собственно ввод аргумента
Аналогично и со вторым аргументом.
А getch(); лучше заменить на system("PAUSE");
0
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
11.08.2009, 00:31
+ ко второму посту выкинуть stdio.h и conio.h
0
 Аватар для I159
4 / 4 / 1
Регистрация: 09.08.2009
Сообщений: 232
11.08.2009, 00:54  [ТС]
stdio.h и conio.h, это тоже относится к старым компиляторам, как и <iostream.h>?
А sistem("PAUSE") писал не в том регистре, потому и не работало, кажется ясн.

Добавлено через 18 минут 6 секунд
С cin я понял, какие функции выполняет stdio.h и conio.h?
Прога работает - спасибо! Но только в таком виде:
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
//BranchDemo - введите два числа.
//Если первый аргумент больше,
//выполняем операторы первой ветви,
//если меньше - второй
#include <stdio.h> 
#include <conio.h>
#include <iostream>
using namespace std;
 
#include <windows.h>
char  bufRus[256];
 
char* Rus(const char* text)
{
      CharToOem(text, bufRus);
      return bufRus;
      }
 
int main (int argc, char* pszArgs[])
{
    //вводим первый аргумент...
    int arg1;
    cout << Rus("Введите arg1: ") <<endl;
    // Ввод аргумента
    cin >>arg1; 
    
    //...второй
    int arg2;
    cout << Rus("Введите arg2: ") <<endl;
    cin >>arg2;
    
    //Оператор условного перехода, принятие решения
    if (arg1 > arg2)
    {
             cout << Rus("аргумент 1 больше чем аргумент 2\n") <<endl;
             }
             else
             {
                 cout << Rus("аргумент 1 не больше, чем аргумент 2\n") <<endl;
                 }
getch();
return 0;
}
т.е. только с getch(); и #include <stdio.h>
#include <conio.h>.
Почему лучше sistem("PAUSE")?

Добавлено через 49 секунд
Блин в код смайлы налезли(
0
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
11.08.2009, 00:58
stdio.h - из языка С, а не С++, conio.h - используется в старых компиляторах. cin содержится в iostream. Какой средой пользуешся?
0
 Аватар для Gravity
577 / 571 / 65
Регистрация: 29.01.2009
Сообщений: 1,274
11.08.2009, 01:01
Выкинь Дэвиса! Возьми Страуструпа.
0
 Аватар для I159
4 / 4 / 1
Регистрация: 09.08.2009
Сообщений: 232
11.08.2009, 01:18  [ТС]
M128K145, Dev C++, новый.

Добавлено через 3 минуты 9 секунд
Gravity, таки да, Дэвис устарел судя по устаревшим операторам, которые он использует. Как книга называется, Страуструпа?

Добавлено через 6 минут 34 секунды
39 C:\Documents and Settings\I159\Мои документы\C++\BranchDemo_1.0.cpp `sistem' undeclared (first use this function) . Вот такое мне компилятор пишет. Как ввести sistem? Я понимаю, что вверху чего-то не хватает, потому как при таких раскладах две ошибки объявляет.
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
//BranchDemo - введите два числа.
//Если первый аргумент больше,
//выполняем операторы первой ветви,
//если меньше - второй
#include <iostream>
using namespace std;
 
#include <windows.h>
char  bufRus[256];
 
char* Rus(const char* text)
{
      CharToOem(text, bufRus);
      return bufRus;
      }
 
int main (int argc, char* pszArgs[])
{
    //вводим первый аргумент...
    int arg1;
    cout << Rus("Введите arg1: ") <<endl;
    // Ввод аргумента
    cin >>arg1; 
    
    //...второй
    int arg2;
    cout << Rus("Введите arg2: ") <<endl;
    cin >>arg2;
    
    //Оператор условного перехода, принятие решения
    if (arg1 > arg2)
    {
             cout << Rus("аргумент 1 больше чем аргумент 2\n") <<endl;
             }
             else
             {
                 cout << Rus("аргумент 1 не больше, чем аргумент 2\n") <<endl;
                 }
sistem("PAUSE");
return 0;
}
0
 Аватар для EnzoMatrix
121 / 121 / 14
Регистрация: 14.03.2009
Сообщений: 462
11.08.2009, 01:23
ну так system, а не sistem
кстати внутри ковычек в систем регистр значения не имеет
0
 Аватар для I159
4 / 4 / 1
Регистрация: 09.08.2009
Сообщений: 232
11.08.2009, 01:32  [ТС]
))) ппц! EnzoMatrix, спасибо))) (за английский)

Добавлено через 2 минуты 25 секунд
Да, и system("PAUSE") ПОАДЕКВАТНЕЕ работает.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.08.2009, 01:32
Помогаю со студенческими работами здесь

Программа под отладчиком работает не так как без отладчика. Магия?
Ситуёвина такова, что прога правильно работает под отладчиком, но неправильно без него. Вот код: .386 .model flat, stdcall ...

Программа интерпритации чисел в их названия работает немного не так, как задумано
Добрый день. Занимаюсь по Страусу. Вот упражнение: &quot;Создайте вектор, хранящий десять строковых значений &quot;zero&quot;,...

Прочитать символы из файла, используя eof() (программа работает не так, как ожидается)
Здравствуйте, мне нужно прочитать символы из файла(желательно с пробелами). Использую eof(), но складывается впечатление, что он не...

Объяснить, почему программа для подсчёта скобок в тексте работает не так, как ожидается
я ввожу текст в блокноте с скобками, мне нужно подсчитать количество скобок в программе, но у меня выходит текст вместо количества скобок,...

Почему при вводе элементов массива, программа прекращает работу или работает не так, как ожидается?
При вводе элементов массива, программа прекращает работу или не правильно работает. Например если указать размер массива 10 , то ввод...


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

Или воспользуйтесь поиском по форуму:
9
Закрытая тема Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера 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. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru