1) 255₁₀ = 11111111₂
2) 255₁₀ = 377₈
3) 255₁₀ = FF₁₆
4) 397₁₀ = 110001101₂
5) 397₁₀ = 615₈
6) 397₁₀ = 18D₁₆
Объяснение:
1) 255₁₀ = 11111111₂
255 / 2 = 127 + остаток 1
127 / 2 = 63 + остаток 1
63 / 2 = 31 + остаток 1
31 / 2 = 15 + остаток 1
15 / 2 = 7 + остаток 1
7 / 2 = 3 + остаток 1
3 / 2 = 1 + остаток 1
1 / 2 = 0 + остаток 1
записываем остатки снизу вверх
11111111₂ = 1 * 2⁰ + 1 * 2¹ + 1 * 2² + 1 * 2³ + 1 * 2⁴ + 1 * 2⁵ + 1 * 2⁶ + 1 * 2⁷ = 1 + 2 + 4 + 8 + 16 + 32 + 64 + 128 = 255₁₀
2) 255₁₀ = 377₈
255 / 8 = 31 + остаток 7
31 / 8 = 3 + остаток 7
3 / 8 = 0 + остаток 3
записываем остатки снизу вверх
377₈ = 7 * 8⁰ + 7 * 8¹ + 3 * 8² = 7 + 56 + 192 = 255₁₀
3) 255₁₀ = FF₁₆
255 / 16 = 15 + остаток 15
15 / 16 = 0 + остаток 15
записываем остатки снизу вверх
FF₁₆ = F * 16⁰ + F * 16¹ = 15 + 240 = 255₁₀
4) 397₁₀ = 110001101₂
397 / 2 = 198 + остаток 1
198 / 2 = 99 + остаток 0
99 / 2 = 49 + остаток 1
49 / 2 = 24 + остаток 1
24 / 2 = 12 + остаток 0
12 / 2 = 6 + остаток 0
6 / 2 = 3 + остаток 0
3 / 2 = 1 + остаток 1
1 / 2 = 0 + остаток 1
записываем остатки снизу вверх
110001101₂ = 1 * 2⁰ + 0 * 2¹ + 1 * 2² + 1 * 2³ + 0 * 2⁴ + 0 * 2⁵ + 0 * 2⁶ + 1 * 2⁷ + 1 * 2⁸ = 1 + 4 + 8 + 128 + 256 = 397₁₀
5) 397₁₀ = 615₈
397 / 8 = 49 + остаток 5
49 / 8 = 6 + остаток 1
6 / 8 = 0 + остаток 6
записываем остатки снизу вверх
615₈ = 5 * 8⁰ + 1 * 8¹ + 6 * 8² = 5 + 8 + 384 = 397₁₀
6) 397₁₀ = 18D₁₆
397 / 16 = 24 + остаток 13
24 / 16 = 1 + остаток 8
1 / 16 = 0 + остаток 1
записываем остатки снизу вверх
18D₁₆ = D * 16⁰ + 8 * 16¹ + 1 * 16² = 13 + 128 + 256 = 397₁₀
Поделитесь своими знаниями, ответьте на вопрос:
Написать на си . составить программу, формирующую одномерный массив, со- стоящий из n целых элементов. вычислить сумму положительных элемен- тов массива. определить количество элементов, имеющих четные поряд- ковые номера и являющиеся нечетными числами. упорядочить элементы массива по возрастанию.
Важное замечание: Программа будет работать только при компиляции компилятором, поддерживающим стандарт C99.
#include <stdio.h>
#include <stdlib.h>
int compare(const int* A, const int* B); // компаратор для qsort
int main()
{
int N;
printf("Введите размер массива: ");
scanf("%d", &N);
int
arr[N],
sum = 0,
number = 0;
for(int i = 0; i < N; i++)
scanf("%d", &arr[i]);
for(int i = 0; i < N; i++)
printf("%d ", arr[i]);
printf("\n");
for(int i = 0; i < N; i++)
{
if(arr[i])
sum += arr[i];
if((arr[i] % 3 == 0) && (i % 2 == 0))
number += 1;
}
qsort(arr, N, sizeof(int), compare);
for(int i = 0; i < N; i++)
printf("%d ", arr[i]);
printf("\nСумма положительных элементов = %d\n\
количество элементов, имеющих четные порядковые номера и являющиеся нечетными числами = %d", sum, number);
return 0;
}
int compare(const int* A, const int* B)
{
return *A - *B;
}