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

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

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

C++ Загвоздка с оператором switch
C++ Загвоздка...
C++ Загвоздка с циклом for
C++ Простая загвоздка)
C++ Загвоздка
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Daynine
 Аватар для Daynine
8 / 8 / 0
Регистрация: 18.11.2009
Сообщений: 24
25.06.2010, 17:19     Загвоздка С++ #2
Выложите свой код,чтобы посмотреть,что мешает\ломает.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 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;
}
Daynine
 Аватар для 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 в столбик и каждое число умножить на число введенное с клавиатуры. Правда не факт.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
25.06.2010, 17:35     Загвоздка С++ #5
Daynine, Ага понял. Кстати. Про введение перед return 0;

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

П.С. Ну это насколько я понимаю тоже не особо то проблемно
Daynine
 Аватар для 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")

ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 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;
}
Даниилко
Сообщений: n/a
26.06.2010, 22:14     Загвоздка С++ #8
Ну Код уже нет смысла Вылаживать.. Щас ребят проверю...!

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

Добавлено через 7 минут
я Просто Новичек..на 2 курсе..Хотел Понять проблему!! я вот даже такой библиотеки не знаю! #include <clocale> .. и не понял что означает system ("pause") не проще?!!
*HellRaiser*
 Аватар для *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() всегда с собой таскай, если хочешь видеть русские буквы в консоли ИМХО
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
27.06.2010, 00:07     Загвоздка С++ #10
*HellRaiser*, Локейл таки проще чем CharToOem имхо
CyBOSSeR
Эксперт C++
 Аватар для CyBOSSeR
2293 / 1663 / 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.
*HellRaiser*
 Аватар для *HellRaiser*
28 / 28 / 2
Регистрация: 08.06.2010
Сообщений: 146
27.06.2010, 00:19     Загвоздка С++ #12
Ну во первых у меня он никогда не работал...
А во вторых рано или поздно он автор топа задаст себе вопрос, как не только выводить кириллицу, но и вводить. Тут то он воспользуется CharToOemA и OemToCharA...
К тому же можно функцию заголовочным файлом сделать и таскать с собой.

Добавлено через 2 минуты
На счёт windows.h то я её по привычке включил. Она не нужна, сорри. Компилируется без неё
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.06.2010, 00:23     Загвоздка С++
Еще ссылки по теме:

Загвоздка с присвоением C++
Загвоздка в значении переменной C++
C++ Загвоздка с объявлением переменной

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

Или воспользуйтесь поиском по форуму:
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
27.06.2010, 00:23     Загвоздка С++ #13
Цитата Сообщение от *HellRaiser* Посмотреть сообщение
Ну во первых у меня он никогда не работал...
А во вторых рано или поздно он автор топа задаст себе вопрос, как не только выводить кириллицу, но и вводить. Тут то он воспользуется CharToOemA и OemToCharA...
К тому же можно функцию заголовочным файлом сделать и таскать с собой.

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

SetConsoleCP(1251);
SetConsoleOutputCP(1251);

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

Текущее время: 16:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru