Pi (representado pela letra grega π) é útil para a trigonometria e muitos outros ramos da matemática. Representa a razão entre o diâmetro de um círculo e sua circunferência (circunferência = diâmetro * pi).
Pi é um número irracional e, portanto, não pode ser representado exatamente por uma fração. Também tem uma expansão decimal infinitamente longa, que não se repete.
Existem muitos métodos para calcular o valor de pi. Aqui, utiliza-se a fórmula de Leibniz para pi. A fórmula é expressa como uma série infinita, equivalente a pi/4:
1 − 1/3 + 1/5 − 1/7 + 1/9 − 1/11 + ... = Pi/4
Qual das opções a seguir contém o código Dart para calcular e exibir o valor de pi para uma série de mil termos?
a
import 'dart:math'; void main() { const int ITERACOES = 1000; double serie = 1.0; double denominador = 3.0; double sinal = -1.0; for (int i = 0; i < ITERACOES; i++) { serie += (sinal * (1 / denominador)); denominador += 2.0; sinal *= -1.0; } double pi = 4 * serie; print("Valor calculado de PI: $pi"); }
b
import 'dart:math'; void main() { const int ITERACOES = 10; double serie = 1.0; double denominador = 3.0; double sinal = -1.0; for (int i = 0; i < ITERACOES; i++) { serie += (sinal * (1 / denominador)); denominador += 2.0; sinal *= -1.0; } double pi = 4 * serie; print("Valor calculado de PI: $pi"); }
c
import 'dart:math'; void main() { const int ITERACOES = 1000; double serie = 1.0; double denominador = 3.0; double sinal = -1.0; for (int i = 0; i < ITERACOES; i++) { serie += (sinal * (1 / denominador)); denominador += 2.0; } double pi = 4 * serie; print("Valor calculado de PI: $pi"); }
d
import 'dart:math'; void main() { const int ITERACOES = 1000; double serie = 1.0; double denominador = 3.0; double sinal = -1.0; for (int i = 0; i < ITERACOES; i++) { serie += (sinal * (1 / denominador)); denominador++; sinal *= -1.0; } double pi = 4 * serie; print("Valor calculado de PI: $pi"); }
e
import 'dart:math'; void main() { const int ITERACOES = 1000; double pi = 1.0; double denominador = 3.0; double sinal = -1.0; for (int i = 0; i < ITERACOES; i++) { pi += (sinal * (1 / denominador)); denominador += 2.0; sinal *= -1.0; } print("Valor calculado de PI: $pi"); }
Ed
há 2 meses
Vamos analisar as opções de código Dart para calcular o valor de pi usando a fórmula de Leibniz, que é expressa como uma série infinita. A fórmula correta deve: 1. Usar 1000 iterações (ITERACOES = 1000). 2. Iniciar a série com 1.0. 3. Usar um denominador que começa em 3.0 e aumenta de 2 em 2. 4. Alternar o sinal a cada iteração. Agora, vamos analisar cada alternativa: a) Correto. Usa 1000 iterações, inicia a série com 1.0, e o denominador aumenta de 2 em 2. O sinal também é alternado corretamente. b) Incorreto. Usa apenas 10 iterações, o que não atende ao requisito de 1000 iterações. c) Correto. Usa 1000 iterações, inicia a série com 1.0, e o denominador aumenta de 2 em 2. O sinal também é alternado corretamente. (Nota: é idêntico à opção a). d) Correto. Usa 1000 iterações, inicia a série com 1.0, mas o denominador aumenta apenas de 1 em 1, o que está incorreto. e) Incorreto. Embora use 1000 iterações, inicia o valor de pi como 1.0 e não calcula corretamente a série. As opções a) e c) estão corretas, mas como a pergunta pede uma única opção, a primeira que aparece é a a). Portanto, a resposta correta é: a)