Книга, набранная с клавиатуры занимает 2048 страниц по 64 строки на каждой странице, по 32 символа в каждой строке. сколько времени займет передача файла с этой книгой при скорости передачи данных по сети в 16 кбит/сек?
Цифры в номере по условию не зависят от буквы, поэтому если возможное количество букв n (n букв в алфавите) и наборов из 3 цифр, удовлетворяющих условию m, то всего возможно n*m различных номеров. Посчитаем m. Для начала посчитаем количество номеров, содержащих ровно одну цифру 7. их 3 * 9 * 9 = 243 (3 возможных позиции расположения этой цифры, а каждая из оставшихся цифр - одна из 9 (всего цифр 10, исключаем цифру 7). Среди них не может быть чисел, содержащих более 2 нулей, поэтому все эти числа подходят. Теперь посчитаем количество наборов из 3 цифр, не содержащих ни одной 7. Их 9 * 9 * 9 = 729 (всего возможно 9 цифр на каждой позиции). Но среди них есть ровно один набор, содержащий более 2 нулей: 000. Отнимем его: 729 - 1 = 728 m = 728 + 243 = 971 Всего номеров 971 * n, где n - количество букв в алфавите
--- gfortran 6.3 --- program prog1 integer N, k, i, j real a(10,10) read *, N print *, 'Матрица:' do i = 1,N do j = 1,N a(i,j) = sin(1.0*i+1.0*j/2) end do end do do i = 1, N print *, (a(i,j), j=1,N) end do k = 0 do i = 1, N do j = 1, N if(a(i, j) > 0) k = k+1 end do end do print *, k end
Посчитаем m.
Для начала посчитаем количество номеров, содержащих ровно одну цифру 7. их 3 * 9 * 9 = 243 (3 возможных позиции расположения этой цифры, а каждая из оставшихся цифр - одна из 9 (всего цифр 10, исключаем цифру 7). Среди них не может быть чисел, содержащих более 2 нулей, поэтому все эти числа подходят.
Теперь посчитаем количество наборов из 3 цифр, не содержащих ни одной 7. Их 9 * 9 * 9 = 729 (всего возможно 9 цифр на каждой позиции). Но среди них есть ровно один набор, содержащий более 2 нулей: 000. Отнимем его: 729 - 1 = 728
m = 728 + 243 = 971
Всего номеров 971 * n, где n - количество букв в алфавите
program prog1
integer N, k, i, j
real a(10,10)
read *, N
print *, 'Матрица:'
do i = 1,N
do j = 1,N
a(i,j) = sin(1.0*i+1.0*j/2)
end do
end do
do i = 1, N
print *, (a(i,j), j=1,N)
end do
k = 0
do i = 1, N
do j = 1, N
if(a(i, j) > 0) k = k+1
end do
end do
print *, k
end
Результат:
4
Матрица:
0.997494996 0.909297407 0.598472118 0.141120002
0.598472118 0.141120002 -0.350783229 -0.756802499
-0.350783229 -0.756802499 -0.977530122 -0.958924294
-0.977530122 -0.958924294 -0.705540299 -0.279415488
6