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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.64
TBIKC
web dev
104 / 91 / 1
Регистрация: 23.09.2010
Сообщений: 738
#1

Программа постоянно печатает степени целого числа 2 - C++

22.08.2011, 22:51. Просмотров 1779. Ответов 24
Метки нет (Все метки)

Напишите программу, которая постоянно печатает степени целого числа 2,
соответственно 2, 4, 8, 16, 32, 64 и т.д. Число повторений вашего цикла не должно,
быть определено (т.е. вы должны создать бесконечный цикл). Что случилось,
когда вы выполнили эту программу?


Ничего не выводит, где я не прав ?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include "stdafx.h"
#include <iostream>
using namespace std;
 
int main()
{
    int num = 0;
    while (true) 
    {     
          cout << num << endl;  
          return num^2; 
   
    }
    system("PAUSE");
    return EXIT_SUCCESS;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.08.2011, 22:51     Программа постоянно печатает степени целого числа 2
Посмотрите здесь:
Посчитать 2 в степени целого длинного числа C++
Написать рекурсивную функцию для вычисления натуральной степени заданного целого числа C++
Написать программу, которая делит числа в 5 степени на число в 14 степени и выводит ответ в 5 степени. Найти ошибку C++
C++ Программа, вычисляющая корень четвертой степени от числа
Программа перевода целого числа без знака в двоичную систему счисления C++
Программа перевода целого числа без знака в двоичную систему счисления C++
C++ Программа с объединением, место целочисленного или вещественного числа,выдает постоянно одну и ту же цифру
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
23.08.2011, 10:59     Программа постоянно печатает степени целого числа 2 #21
C
1
2
3
4
5
6
7
8
9
10
#include <stdio.h>
 
int main(void) {
    unsigned int n = 1;
    while (n < 0xFFFF) {
        printf("%x\n", n <<= 1);
    }
 
    return 0;
}
Добавлено через 54 секунды
Опоздал со смещением
Paporotnik
383 / 227 / 7
Регистрация: 06.07.2011
Сообщений: 512
23.08.2011, 11:25     Программа постоянно печатает степени целого числа 2 #22
а разве умножение на 2 не заменяется компиляторами на сдвиг автоматически?
Olga_
840 / 182 / 16
Регистрация: 01.08.2011
Сообщений: 502
23.08.2011, 12:05     Программа постоянно печатает степени целого числа 2 #23
Цитата Сообщение от Paporotnik Посмотреть сообщение
а разве умножение на 2 не заменяется компиляторами на сдвиг автоматически?
Не будем зависеть от компилятора (вроде как: "господин компилятор, замените, пожалуйста, умножение на сдвиг"), а лучше сами так сделаем
Net_Wanderer
235 / 208 / 19
Регистрация: 08.06.2011
Сообщений: 467
23.08.2011, 12:49     Программа постоянно печатает степени целого числа 2 #24
C
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
#include <limits.h>
 
int main(void)
{
    unsigned n = 1;
 
    while (1)
        printf("%u\n", (n <= UINT_MAX-n) ? (n <<= 1) : (n = 2));
 
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.08.2011, 11:07     Программа постоянно печатает степени целого числа 2
Еще ссылки по теме:
C++ Программа, которая вводит с клавиатуры три целых числа и печатает сумму, среднее значение, произведение, меньшее и большее из этих чисел
Описать функцию DigitN(K, N) целого типа, возвращающую N-ю цифру целого положительного числа K C++
Составить программу,которая для любого натурального числа печатает количество цифр в записи этого числа C++
Даны натуральные числа n, k. Проверить, есть ли в записи числа n (в степени k) цифра m C++
Определить цифры целого числа (тип числа - целое без знака) C++

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

Или воспользуйтесь поиском по форуму:
Dani
1278 / 636 / 56
Регистрация: 11.08.2011
Сообщений: 2,277
Записей в блоге: 2
Завершенные тесты: 1
24.08.2011, 11:07     Программа постоянно печатает степени целого числа 2 #25
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
#include <fstream>
#include <vector>
 
int main()
{
    std:: vector <int> a(1,1);
    int n;
    std:: ifstream ifs ("input.txt");
    ifs >> n;
    ifs.close();
    
    for (int i=0;i<n;i++)
    {
    for (int j=0;j<a.size();j++) 
      a[j] *= 2;
      
      for (int k=0;k<=a.size()-1;k++)
      if (a[k]>9) 
      {
         if (k==a.size()-1) a.push_back(1); 
         else a[k+1]++;
         a[k]-=10;
      }    
    }
      
      
    std:: ofstream ofs ("output.txt");
    for (int i=a.size()-1; i>=0; i--)
    ofs << a[i];
    ofs.close();
   // std:: cin >> a[1];
    return 0;
}
Вот выводит степени двойки (даже 2^1000).
Yandex
Объявления
24.08.2011, 11:07     Программа постоянно печатает степени целого числа 2
Ответ Создать тему
Опции темы

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