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

динамический массив чисел - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти все натуральные числа, не превосходящие заданного N и равные сумме кубов своих цифр. http://www.cyberforum.ru/cpp-beginners/thread358133.html
Найти все натуральные числа, не превосходящие заданного N и равные сумме кубов своих цифр. Смог осилить только для чисел, не превосходящих 1000. #include "stdafx.h" void main() { for (int i=1; i<1000; i++) { int t = i, sum=0;
C++ Свой класс String Небольшой набросок на класс String #include <iostream> #include <cstring> using namespace std; class String { struct Srep;//представление Srep *rep; http://www.cyberforum.ru/cpp-beginners/thread358125.html
do this 10 second's C++
вобщем сабж. Имеется некоторая функция foo. Хочется, чтобы она выполнялась 10 секунд: int timer = 10 //секунд; while(timer){ foo() } Как попроще реализовать? Добавлено через 1 минуту редактирование не работает. Имелось ввиду: int timer = 10 //секунд; while(timer){ foo() }
C++ char
посоветуйте книжку где по подробнее описывается взаимодействие в char на c
C++ Объявление массивов в С/С++ http://www.cyberforum.ru/cpp-beginners/thread358091.html
Пытаюсь создать матрицу размера n: #include <iostream> using namespace std; int main() { int n,i,j; int m; cout << "Введите n\n"; cin >> n;
C++ error C2601: 'main' : local function definitions are illegal fatal error C1004: unexpected end of file found День добрый люди написал програму выдает 2 ошибки че не так подскажите error C2601: 'main' : local function definitions are illegal fatal error C1004: unexpected end of file found #include "stdafx.h" #include <iostream> #include <string.h> #include <conio.h> using namespace std; подробнее

Показать сообщение отдельно
Merovingian
54 / 54 / 5
Регистрация: 24.09.2011
Сообщений: 149
29.09.2011, 18:48     динамический массив чисел
Попробую объяснить)
ну вам надо хранить 2 цифры в 1 байте.
1 байт = 8 бит.
Цифры бывают от 0 до 9, представим цифру числом. Самое большое число-чифра - 9, представляется как 1001 в двоичном коде, в этом не трудно убедиться:
9 / 2 = 4 + 1
4 / 2 = 2 + 0
2 / 2 = 1 + 0
1 / 2 = 0 + 1
Таким образом чтобы хранить цифру, нам необходимо 4 бита, т.к. самое большое число-цифра это 9
Для второй цифры понадобиться еще 4 бита. Таким образом мы можем записать 2 цифры в 8 бит(1 байт). Познакомьтесь с понятиями "маска", "побитовые операции", "сдвиг", "побитовое или/и". Я думаю вам станет все понятно)
PS: Достаточно одномерного массива типа char, чтобы хранить числа от 0 до 99
 
Текущее время: 10:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru