во всех этих задачах используются 2 формулы (объем)I=k*i; (мощность)N=2^i
1) 8=2^i => i=3, объём= 3*20=60 бит
2)вес одного символа 4096/1024=4 бит => i=4, мощность (N) = 2^i => N=2^4=16
3)12288/8=1536 байт, далее 1536/1024=1,5 Кбайт
4)для начала переведем объем кбайт и биты. (из предыдущей задачи это 12288 бит); после найдем i i=12288/4096=3. далее мощность (N)=2^3=8
5)один символ занимает 4 бита (2^4=16) 1/64 часть мегабайта = 1024 * 1024 * 8 / 64 = 131072 бита значит 131072 / 4= 32768 символов.
6)находим количество(k) 4*30*50=6000, кол-во информации (объем (I) ) из байт переводим в бит. 4500*8=36000 бит. далее находим i; i=I(объем)/k(кол-во); i=36000/6000=6. N=2^6=64.
7)может не 1,5*1023, а 1,5*10^23? N=4; i=2. находим объём 2*1,5*10^23. I=3*10^23.
8)всего двухзначных чисел 100. (00, 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12 и тд. ) значит 2^i=100. близжайшее значение i в данном случае 7. Так как если 6, то 2^6=64, 100-64=36. если i=7, то 2^7=128. 100-128=-28 (ну по факту разница в 28 единиц.) что ближе 36 или 28? следовательно ответ 7.
Поделитесь своими знаниями, ответьте на вопрос:
1. системы счисления1.2. запишите в развернутой форме число 62, 0102. перевод числа из одной системы счисления в дру2.1. заполните таблицу, в каждой строке которой одзаписано в системах счисления с основаниями 2, , 101001101| 26одно и тоже число должно быть2(8иями 2, 8, 10, 16.16| 2541e2.2. вычислите десятичные эквивалент числа тогтмол3. двоичная арифметика110011001, +101101124. представление чисел в компьютере4.1. представьте число в 8-разрядном формате 102. запишите числа в естественной форме 0, 4.3. среди ниже трёх чисел, записанайдите максимальное и запишите его в ответазапишите только число, основание с2416, 50, 101 100.пишите найменьшее целое число х, для ко.не (х < = 7) и (х< 20)? ие 0, 64*108, 100908, 56e-4.санных в различных системах счисления, в десятичной системе счисления. в ответеисления указывать не нужно.ование системы с5.логика напишите найменых, для которого истинно высказывание:
var
f:file of integer;
i,k:integer;
begin
Randomize;
Assign(f,'in.dat'); Rewrite(f);
for i:=1 to 20 do begin
k:=Random(99)+1;
Write(f,k)
end;
Close(f)
end.
Тестовое решение
38 35 14 46 92 49 51 48 84 90 26 14 38 79 82 77 7 24 94 13
2. Основная программа
uses Crt;
const
nn=100;
var
i,j,k,n:integer;
fin,fout:file of integer;
a:array[1..nn] of integer;
dub:boolean;
begin
ClrScr;
Assign(fin,'in.dat'); Reset(fin);
Read(fin,k);
if not eof(fin) then begin
n:=1; Write(k,' '); a[n]:=k
end
else n:=0;
while (not eof(fin)) and (n<=nn) do begin
Read(fin,k); Write(k,' ');
j:=1; dub:=false;
while (j<=n) and (not dub) do begin
dub:=(a[j]=k); Inc(j);
end;
if not dub then begin Inc(n); a[n]:=k; Inc(j) end
end;
Writeln;
Close(fin);
for i:=1 to n do Write(a[i],' ');
Writeln; Writeln('n=',n);
Assign(fout,'out.dat'); Rewrite(fout);
Write(fout,n); Close(fout);
ReadKey
end.
Тестовое решение:
38 35 14 46 92 49 51 48 84 90 26 14 38 79 82 77 7 24 94 13
38 35 14 46 92 49 51 48 84 90 26 79 82 77 7 24 94 13
n=18
В качестве бонуса - решение этой же задачи в современной системе программирования PascalABC.NET.
// PascalABC.NET 3.1, сборка 1219 от 16.04.2016
begin
var fin,fout:file of integer;
Reset(fin,'in.dat');
var k:integer;
var a:=new integer[fin.FileSize];
var n:=0;
while not eof(fin) do begin
Read(fin,k); a[n]:=k; Inc(n)
end;
Close(fin);
a.Println;
var b:=a.ToHashSet;
b.Println; Writeln('n=',b.Count)
end.
Тестовое решение
38 35 14 46 92 49 51 48 84 90 26 14 38 79 82 77 7 24 94 13
38 35 14 46 92 49 51 48 84 90 26 79 82 77 7 24 94 13
n=18
И вопрос: для чего давать школьникам, 9/10 из которых никогда не будут программистами, устаревшие и громоздкие, сложные для понимания, написания и отладки системы программирования? Чтобы показать, "как все это сложно"?