Двухразрядное число, записанное в четверичной СС при перестановке его цифр равно числу в семеричной СС. Найти оба эти числа или досказать, что такое невозможно.
// PascalABC.NET 3.3, сборка 1607 от 31.12.2017 // Внимание! Если программа не работает, обновите версию!
begin var (b,a):=ReadInteger2('Введите границы промежутка:'); if a<b then Swap(a,b); var d:=b mod 4; if d<>0 then // первое число, кратное 4 if b<0 then b+=Abs(d) else b+=4-d; while b<=a do begin Print(b); b+=4 end; end.
static void Main(string[] args)
{
int[] arr = new int[10];
Random r = new Random();
int sum = 0;
int n = 0;
bool fl = false;
Console.WriteLine("Начальный массив:");
for (int i = 0; i < arr.Length; i++)
{
arr[i] = r.Next(0, 9);
Console.Write("{0} ", arr[i]);
}
int last = Array.LastIndexOf(arr, arr.Max());
Console.WriteLine("\nиндекс последнего максимума:" + last);
Console.WriteLine("после замены:");
int temp = arr[0];
arr[0] = arr.Max();
arr[last] = temp;
for (int i = 0; i < arr.Length; i++)
Console.Write("{0} ", arr[i]);
try
{
n = Array.IndexOf(arr, 0);
fl = true;
}
catch
{
Console.WriteLine("В массиве нет нулевого элемента");
}
if (fl)
{
for (int i = n; i < arr.Length; i++)
sum += arr[i];
Console.WriteLine("\nСумма:{0}", sum);
}
Console.ReadLine();
}
// Внимание! Если программа не работает, обновите версию!
begin
var (b,a):=ReadInteger2('Введите границы промежутка:');
if a<b then Swap(a,b);
var d:=b mod 4;
if d<>0 then // первое число, кратное 4
if b<0 then b+=Abs(d) else b+=4-d;
while b<=a do begin Print(b); b+=4 end;
end.
Примеры
Введите границы промежутка: 15 60
16 20 24 28 32 36 40 44 48 52 56 60
Введите границы промежутка: -15 13
-12 -8 -4 0 4 8 12
Введите границы промежутка: 1 19
4 8 12 16