using System; public class Test{ public static void Main(){ const int max = 100; int[] a = new int[max]; for(int i = 0; i < max; ++i){ Console.Write("a[{0}] = ", i); a[i] = Convert.ToInt32(Console.ReadLine(), 10); } Console.Clear(); Console.WriteLine("Исходный массив:"); for(int i = 0; i < max; ++i) Console.Write("{0} ", a[i]); Console.WriteLine();Console.WriteLine(); bool k = false; for(int i = 2; i < max; ++i) if((a[i] - a[i-1]) != (a[i-1] - a[i-2])){ k = true; break; } if(k) Console.WriteLine("Это НЕ арифметическая прогрессия"); else Console.WriteLine("Это арифметическая прогрессия c разностью {0}", a[1]-a[0]); } }
Зная количество бит в двоичной записи числа, можно посчитать количество бит в восьмеричной записи, так как из двоичной в восьмеричную систему счисления число можно привести группировкой по трем соседним разрядам, начиная с младших. Например, есть число 1100111. Сгруппируем его разряды: (1)(100)(111)=147 - в восьмеричной СС. Пусть количество разрядов 2-ичного числа равно n. Тогда количество разрядов восьмеричного числа будет n/3, деленное нацело и округленное вверх. n=7 => n/3=7/3. Округляем, будет 3. a) 10111010. n=8 => 8/3 - 3 8-ричных разряда б) 1001111000111, n=13 => 13/3 - 5 8-ричных разрядов в) A18C. Сначала найдем n. Посмотрим, сколько значащих разрядов у старшей цифры. A=1010 - 4 разряда. У остальных цифр по 4 разряда всегда. Поэтому n=3*4+4=16 => 16/3 - 6 8-ричных разрядов. г) 1375BE. 1=1 : 1 разряд => n=5*4+1=21 => 21/3 - 7 8-ричных разрядов
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку