===== PascalABC.NET =====
begin
var (n, k) := ReadInteger2('Введите N и k:');
var s := 0;
n := Abs(n); // в условии не сказано, что число всегда подожительное!
while n > 0 do
begin
var d := n mod 10;
if d > k then
s += d;
n := n div 10
end;
Print(s)
end.
Есть такжен более короткое решение:
begin
var (n, k) := ReadInteger2('Введите N и k:');
var a := Abs(n).ToString.ToCharArray.Select(c -> c.ToDigit).ToArray;
a.Where(p -> p > k).Sum.Println
end.
//Dev-C++ 4.9.9.2
#include <iostream>
using namespace std;
int main(){
int a,n=0;
int k0=0;
int kp=0;
int kot=0;
cin>>n;
for(int i=0;i<n;i++){
cin>>a;
if(a==0)k0++;
if(a>0)kp++;
if(a<0)kot++;}
cout<<k0<<endl<<kp<<endl<<kot;
cin.get();
cin.get();
return 0;
}
Пример ввода:
4
0
-1
1
2
Пример вывода:
1
2
1
1)
150 байт = 150*8 бит = 1200 бит
Количество информации на один символ = 1200/400 = 3 бита
Количество символов в алфавите = 2^3 = 8
2)
Количество символов = 80*55 = 4400
3300 байт = 3300*8 бит
Количество информации на один символ = 3300*8/4400 = 6 бит
<span>Количество символов в алфавите = 2^6 = 64
</span>
3)
Количество символов = 3*80*33 = 7920
6930 байт = 6930*8 бит
Количество информации на один символ = 6930*8/7920 = 7 бит
<span>Количество символов в алфавите = 2^7 = 128</span>