Ерцкин_Овечкина391
?>

2 текста содержат одинаковое количество символов первый текст составлен из символов алфавита мощностью 16 а второй текст из символов алфавита мощностью 4096 Во сколько раз количество информации во втором тексте больше чем в первом​

Информатика

Ответы

intermar2000
Можно и короче, но так нагляднее:
#include <stdlib.h>
#include <iostream>
using namespace std;

int main() {
const int n=6;
int a;
int b;
int c;
int arr[n]={-3, -2, -1, 1, 2, 3};
for (int i = 0; i < n; i++) {
cout << arr[i] << " ";
}
cout << endl;

srand(time(0));
a = rand() % 6;
cout << "(" << a << ")" << " a = " << arr[a] << endl;
if (a != 0) b = rand() % a; else b=0;
cout << " b = " << b << " (" << arr[a-b] << " этаж)" << endl;
if ((n-a+b) != 0) c = rand() % (n-a+b); else c=0;
cout << " c = " << c << " (" << arr[a-b+c] << " этаж)" << endl;
}

Пример:
-3 -2 -1 1 2 3
 (5) a = 3
 b = 4 (-2 этаж)
 c = 2 (1 этаж)

Если этажей может быть много (до 100), то подробное решение может быть таким:
#include <stdlib.h>
#include <iostream>
using namespace std;

int main() {
int n, n1, a, b, c;
int a1, a2, a3;

srand(time(0));
n = (rand() % 50 + 1)*2;
n1 = n/2;
cout << " n = " << n << " (" << -n1 << " ... " << n1 << ")" << endl;
a1 = rand() % n;
a = a1-n1;
if (a <= 0) a--;
cout << " a = " << a << endl;
b = rand() % a1;
a2 = a1-b-n1; 
if (a2 <= 0) a2--; 
cout << " b = " << b << " (" << a2 << " этаж)" << endl;
if ((n-a1+b) != 0) c = rand() % (n-a1+b); else c=0;
a3 = a1-b+c-n1;
if (a3 <= 0) a3--; 
cout << " c = " << c << " (" << a3 << " этаж)" << endl;
}

Пример:
n = 96 (-48 ... 48)
a = -38
b = 9 (-47 этаж)
c = 83 (37 этаж)
kettikis
#include <stdio.h>
#include <stdlib.h>

int main() 

   int N=10;
   int i, j, sum, a[N][N]; 
   float sr;
   
   srand (time(NULL)); 
   for ( i = 0; i < N; i ++ )     {
    for ( j = 0; j < N; j ++ )            {
        a[i][j] = rand() % 50 + 1;
        printf ("%4d ", a[i][j]);
        } 
    printf("\n");
   }
    sum = 0;
    for ( i = 1; i < N; i ++ )
     for ( j = 0; j < i; j ++ )
       sum+=a[i][j];
    printf ("sum = %d\n",sum);
    sr = sum/((N*N-N)/2.0);
    printf("Ср. арифм. элементов ниже главной диагонали = %5.2f\n", sr);
    return 0;
}

Пример (для матрицы 5х5):
10 6 7 20 27
26 4 25 18 44
8 34 34 27 40
34 24 19 43 7
6 11 24 10 16
sum = 196
Среднее арифметическое элементов ниже главной диагонали = 19.60

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

2 текста содержат одинаковое количество символов первый текст составлен из символов алфавита мощностью 16 а второй текст из символов алфавита мощностью 4096 Во сколько раз количество информации во втором тексте больше чем в первом​
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

ddavydov1116
dima0218687
leeteukism
buleckovd8724
tigran87-87
modno-trikotazh
Маринина_Елена
kokukhin
ski89439
elenasnikitina84
asl09777
vikanikita
Ter-Pogosov_Vasilevna
adminaa
rebet61