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

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

Войти
Регистрация
Восстановить пароль
 
Даниилко
Сообщений: n/a
#1

Загвоздка С++ - C++

25.06.2010, 17:17. Просмотров 709. Ответов 12
Метки нет (Все метки)

в общем Начнем с того что что рассмотрим простейшию Задачу) Короч написать прогу что бы выводило числа от 1 до 10 в столбик...ну Вот..и там еще нужно сделать перемножение..Когда Я Его вытворяю вся Прога Летит и не Запускаеться... Может кто Помоч? Если Можно На Примере Пож оч интересно!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.06.2010, 17:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Загвоздка С++ (C++):

Загвоздка - C++
Знаю что темы есть и бла-бла-бла ... Но у меня среда разработки Visual Studio , проблема вот в чем , текст чтобы русский вводился с клавы и...

Простая загвоздка) - C++
Може кому то покажется смешным мой вопрос, ну имеем, то что имеем) Дано масив "char s" он пустой, и дано переменную "int а"как зделать...

Загвоздка с присвоением - C++
подскажите в чем загвоздка, а именно в условии не присваивает значение и его позицию #include <iostream> using namespace std; ...

Загвоздка с циклом for - C++
Вообщем смысл задачи: дан отрезок на оси "х" от "а" до "b" , и задан шаг на этом отрезке "h". Нужно используя оператор for, вывести в...

Загвоздка в значении переменной - C++
int i = 5; i = ++i + ++i; Чему будет равно i? Помню, в Страуструпе что-то похожее было, но не вспомню.

Загвоздка с объявлением переменной - C++
Всем доброго времени суток. Недавно начал изучать С++ по Дейтелу. Есть такой пример программы, который прерывает цикл при определенном...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Daynine
8 / 8 / 0
Регистрация: 18.11.2009
Сообщений: 24
25.06.2010, 17:19 #2
Выложите свой код,чтобы посмотреть,что мешает\ломает.
1
ForEveR
В астрале
Эксперт С++
7972 / 4734 / 321
Регистрация: 24.06.2010
Сообщений: 10,542
Завершенные тесты: 3
25.06.2010, 17:22 #3
Так?

C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
int main()
{
    int multi=1;
    for(int i=1;i<=10;i++)
    {
        std::cout<<i<<'\n';
        multi=multi*i;
    }
    std::cout<<multi<<'\n';
    return 0;
}
1
Daynine
8 / 8 / 0
Регистрация: 18.11.2009
Сообщений: 24
25.06.2010, 17:31 #4
Цитата Сообщение от Lavroff Посмотреть сообщение
Так?

C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
int main()
{
    int multi=1;
    for(int i=1;i<=10;i++)
    {
        std::cout<<i<<'\n';
        multi=multi*i;
    }
    std::cout<<multi<<'\n';
    return 0;
}
Что значит летит и не запускается? У меня все работает... мб окно сворачивается быстро,если да то добавьте
C++
1
2
std::cin.get();
std::cin.get();
перед return 0

Хммм сначала написал,потом заметил,что другой человек отписался.
Полагаю у него случай другой - ему нужно вывести 1-10 в столбик и каждое число умножить на число введенное с клавиатуры. Правда не факт.
1
ForEveR
В астрале
Эксперт С++
7972 / 4734 / 321
Регистрация: 24.06.2010
Сообщений: 10,542
Завершенные тесты: 3
25.06.2010, 17:35 #5
Daynine, Ага понял. Кстати. Про введение перед return 0;

system ("pause") не проще?

П.С. Ну это насколько я понимаю тоже не особо то проблемно
1
Daynine
8 / 8 / 0
Регистрация: 18.11.2009
Сообщений: 24
25.06.2010, 17:43 #6
Что-то типо такого:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <clocale>
int main()
{
        setlocale (LC_ALL, "RUSSIAN");
        int multi=1;
        int x;
        
        std::cout << "На что умножаем?";
        std::cin >> x;
 
 
        for(int i=1;i<=10;i++)
        {
                std::cout<<i<<'\n';
                multi=x*i;
                std::cout<<multi<<'\n';
        }
        
        std::cin.get();
        std::cin.get();
        return 0;
}
Добавлено через 1 минуту
Цитата Сообщение от Lavroff Посмотреть сообщение
Daynine, Если вы не видите, я предложил свой вариант. И не я автор темы ТТ

Не по теме:

Выше написал,что ошибся - бывает,извиняюсь.



Добавлено через 2 минуты
Цитата Сообщение от Lavroff Посмотреть сообщение
Про введение перед return 0;

system ("pause") не проще?

П.С. Ну это насколько я понимаю тоже не особо то проблемно

Не по теме:

Хммм,просто привык уже дописывать cin.get.
Уже рука инстинктивно к этой комбинации тянется,надо переходить наsystem ("pause")

1
ForEveR
В астрале
Эксперт С++
7972 / 4734 / 321
Регистрация: 24.06.2010
Сообщений: 10,542
Завершенные тесты: 3
25.06.2010, 17:45 #7
Daynine, Ну да. Или вот так, но это дело вкуса:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <clocale>
int main()
{
        setlocale (LC_ALL, "RUSSIAN");
        int multi=1;
        int x;
        
        std::cout << "На что умножаем?";
        std::cin >> x;
        for(int i=1;i<=10;i++)
        {
                std::cout<<i<<'\n';
        }
        std::cout<<"\n";
        for(int i=1;i<=10;i++)
        {
            multi=i*x;
            std::cout<<multi<<"\n";;
        }
       system("pause");
        return 0;
}
2
Даниилко
Сообщений: n/a
26.06.2010, 22:14 #8
Ну Код уже нет смысла Вылаживать.. Щас ребят проверю...!

Добавлено через 9 минут
ну да вродь не выкидывает..ща ошибки исправлю посмотрим...Вы На Борланде Делали Это?

Добавлено через 7 минут
я Просто Новичек..на 2 курсе..Хотел Понять проблему!! я вот даже такой библиотеки не знаю! #include <clocale> .. и не понял что означает system ("pause") не проще?!!
*HellRaiser*
28 / 28 / 2
Регистрация: 08.06.2010
Сообщений: 146
26.06.2010, 23:57 #9
Дооптимизировал так сказать:
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
#include <iostream>
#include <windows.h>
 
char bufRus[256];
 
char* Rus(const char* text) {
      CharToOem(text, bufRus);
      return bufRus;
      }
 
 
int main()
{
        int multi=1;
        int x;
 
        std::cout << Rus("На что умножаем? ");
        std::cin >> x;
                for(int i=1;i<=10;i++)
        {
                std::cout<<i<<'\n';
        }
                std::cout<<"\n";
                for(int i=1;i<=10;i++)
                {
                        multi=i*x;
                        std::cout<<multi<<"\n";;
                }
        std::cout << std::endl;
        system("pause");
        return 0;
}
И не надо никаких #include <clocale>
system ("pause") чтоб окошко сразу не закрывалось
P.S. А функцию Rus() всегда с собой таскай, если хочешь видеть русские буквы в консоли ИМХО
0
ForEveR
В астрале
Эксперт С++
7972 / 4734 / 321
Регистрация: 24.06.2010
Сообщений: 10,542
Завершенные тесты: 3
27.06.2010, 00:07 #10
*HellRaiser*, Локейл таки проще чем CharToOem имхо
0
CyBOSSeR
Эксперт C++
2303 / 1673 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
27.06.2010, 00:13 #11
Цитата Сообщение от *HellRaiser* Посмотреть сообщение
Дооптимизировал так сказать:
Не до конца "дооптимизировал".
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <clocale>
 
int main() {
  setlocale(LC_ALL, "Russian");
  
  int x;
  std::cout << "На что умножаем?";
  std::cin >> x;
  
  for(int i = 0; i <= 9; ++i)
    std::cout<< i << '\t' << i * x << std::endl;
 
  system("pause");
  return 0;
}
Цитата Сообщение от *HellRaiser* Посмотреть сообщение
И не надо никаких #include <clocale>
Думаешь windows.h лучше? clocale - стандартный заголовочный файл, поэтому в отличии от твоего варианта варианты Daynine и Lavroff с clocale будут работать в любой ОС, а не только в Windows.
0
*HellRaiser*
28 / 28 / 2
Регистрация: 08.06.2010
Сообщений: 146
27.06.2010, 00:19 #12
Ну во первых у меня он никогда не работал...
А во вторых рано или поздно он автор топа задаст себе вопрос, как не только выводить кириллицу, но и вводить. Тут то он воспользуется CharToOemA и OemToCharA...
К тому же можно функцию заголовочным файлом сделать и таскать с собой.

Добавлено через 2 минуты
На счёт windows.h то я её по привычке включил. Она не нужна, сорри. Компилируется без неё
0
ForEveR
В астрале
Эксперт С++
7972 / 4734 / 321
Регистрация: 24.06.2010
Сообщений: 10,542
Завершенные тесты: 3
27.06.2010, 00:23 #13
Цитата Сообщение от *HellRaiser* Посмотреть сообщение
Ну во первых у меня он никогда не работал...
А во вторых рано или поздно он автор топа задаст себе вопрос, как не только выводить кириллицу, но и вводить. Тут то он воспользуется CharToOemA и OemToCharA...
К тому же можно функцию заголовочным файлом сделать и таскать с собой.

Добавлено через 2 минуты
На счёт windows.h то я её по привычке включил. Она не нужна, сорри. Компилируется без неё
Ну да. А можно с windows.h еще и так:

SetConsoleCP(1251);
SetConsoleOutputCP(1251);

Дело вкуса и потребности
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.06.2010, 00:23
Привет! Вот еще темы с ответами:

Загвоздка в простой проге) - C++
Привет всем. #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; int main() { char a; int i; cout &lt;&lt; &quot;Vvedit...

Загвоздка с оператором switch - C++
Стоит MVS08, при вводе 5 сразу выходит из программы, а когда ошибочно, т.е. ввожу 8, он мне Error! Again the input..., ввожу 5, после...

Перегрузка операторов и небольшая загвоздка с this - C++
Пирвет, писал я тут в своей фигне перегрузку операторов. Вроде все норм, но наткнулся на интересную ситуацию. vec2.h: #pragma...

Застрял, не знаю в чем загвоздка. - C++
Задание: Реализовать программу игры в кости. Два игрока бросают по очереди костяшки, выигрывает тот, у кого выпало большее значение. ...


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

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

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