Различные windows быстрей и лучше работает.
#include <iostream><span>using namespace std;</span><span>int main()</span>{<span> int n,a[10001],i,j,k=0,b;</span><span> cin>>n;</span><span> for(i=1;i<=n;i++)</span><span> {</span><span> cin>>a[i];</span><span> }</span><span> for(i=n;i>=1;i--)</span><span> {</span><span> cout<<a[i]<<" ";</span><span> }</span><span> return 0;</span>} <span>
</span>
Тут нужно перевести число из одной системы счисления в другую. Как это сделать? Легко и просто.
Для начала давай нарисуем таблицу тетрад: пишем сначала в столбик 8 нулей, затем 8 единиц, во втором ряду пишем уже 4 нуля, затем 4 единицы, а потом повторяем эту запись. С третьим и четыертым рядами проделываем такое же действие. Затем каждой тетраде(ряду) присвоим значение цифрами от 0 до 9 и буквами латинского алфавита от А до F. Затем отделим для удобства вложенную в таблицу тетрад таблицу триад. Должна получиться таблица как на рисунке.
Для чего она нам нужна? Для упрощения перевода чисел в системах счисления, основаниями которых являются степени двойки.
Так как перевести числа с одной системы счисления в другую? Например, число 1001001 двоичной системы счисления в десятичную? Начертим над числом справа налево ряд цифр от 0. Затем, умножим каждую цифру в этом числе на основание(2) в степени, которая надписана над этой цифрой и сложим то, что получится(нули пропустим, по понятным причинам):
1 × 2 в 6 + 1 × 2 в 3 + 1 × 2 в 0 = 64 + 8 + 1 = 73
Это что касается перевода с 2-ой в 10-ую.
С 2-ой в 8-ую и в 16-ую переводить гораздо проще. Для этого воспользуемся нашей таблицей. Для перевода в 8-ую нужна таблица триад, для 16-ой - тетрад. Переведем наше число, например, в 8-ую систему. Разбиваем наше число в 2-ой системе на триады. Получаем:
1 | 001 | 001
Первая триада не полная, её можно дополнить нулями, а можно просто знать, что 1 и 001 - одно и тоже. Теперь слева направо сверяемся с таблицой триад и записываем нужную цифру.
001 - это 1. Значит мы получим число 111.
Для 16-ой действия аналогичные, только мы разбиваем на тетрады:
100 | 1001
4 9
49
Для перевода чисел в системах с основаниями степеней двойки в 2-ую, нам поможет все та же таблица. Теперь мы смотрим какой тетради (триаде/диаде) соответствует каждая цифра числа. Например, переведем 49 16-ой в 2-ую:
4 9
01001001
С остальными примерами также проделываем.
В результате должна получиться такая таблица:
*После точки идет основание числа*
Строка 1:
1001001•2
111•8
73•10
49•16
Строка 2:
10101001•2
251•8
169•10
А9•16
Строка 3:
100001000•2
410•8
264•10
108•16
Строка 4:
111000000•2
448•10
700•8
1С0•16
Маша - картофельный чипсы, луковые чипсы, молочный коктель
Егор - картофельные чипсы, луковые чипсы, молочный коктель
Аня - луковые чипсы, бутерброд с котлетой, лимонад
Саша - шоколадное печенье, луковые чипсы, бутерброд с котлетой, лимонад
Кирилл - бутерброд с котлетой, молочный коктель
Наташа - луковые чипсы, бутерброд с котлетой, молочный коктель