While14. Дано число A (> 1). Вывести наибольшее из целых чисел K, для которых сумма 1 + 1/2 + … + 1/K будет меньше A, и саму эту сумму.
>
Решение Pascal
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | program While14; var Temp:Real; A,K :Integer; begin Write('Введите A: '); Readln(A); K:=0; Temp:=0; while Temp<=A do begin inc(K,1); Temp:=Temp+1/K; end; Writeln(K-1,' ',Temp-1/K); end. |
Решение C
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | #include <stdio.h> int main(void) { float a; printf("A:"); scanf ("%f", &a); int k=0; float temp=0; while (temp<=a) { ++k; temp+=1/(float)k; } printf("K: %i\nSum:%f\n",k-1,temp-1/(float)k); return 0; } |
На нашем сайте Вы можете заказать решение любой задачи по программированию на любом языке программирования