6.3 KiB
6.3 KiB
id, title, challengeType, isRequired, videoUrl, localeTitle
| id | title | challengeType | isRequired | videoUrl | localeTitle |
|---|---|---|---|---|---|
| bd7158d8c442eddfaeb5bd17 | Build a JavaScript Calculator | 3 | true | Construa uma calculadora JavaScript |
Description
= (sinal de igual) com um id="equals" . História de usuário # 2: Minha calculadora deve conter 10 elementos clicáveis contendo um número cada de 0 a 9, com os seguintes IDs correspondentes: id="zero" , id="one" , id="two" , id="three" , id="four" , id="five" , id="six" , id="seven" , id="eight" e id="nine" . História de usuário # 3: Minha calculadora deve conter 4 elementos clicáveis, cada um contendo um dos 4 principais operadores matemáticos com as seguintes IDs correspondentes: id="add" , id="subtract" , id="multiply" , id="divide" . História do usuário nº 4: minha calculadora deve conter um elemento clicável contendo um . (ponto decimal) símbolo com um id="decimal" correspondente id="decimal" . História do usuário nº 5: minha calculadora deve conter um elemento clicável com um id="clear" . História de usuário # 6: Minha calculadora deve conter um elemento para exibir valores com um id="display" . História de usuário # 7: A qualquer momento, pressionar o botão Limpar apaga os valores de entrada e saída e retorna a calculadora ao estado inicializado; 0 deve ser mostrado no elemento com o id de display . História de usuário # 8: Como eu insiro números, eu deveria ser capaz de ver minha entrada no elemento com o id de display . História de usuário # 9: Em qualquer ordem, eu deveria ser capaz de adicionar, subtrair, multiplicar e dividir uma cadeia de números de qualquer tamanho, e quando eu pressionar = , o resultado correto deve ser mostrado no elemento com o ID de display . História de usuário # 10: Ao inserir números, minha calculadora não deve permitir que um número comece com vários zeros. História de usuário # 11: Quando o elemento decimal é clicado, a . deve anexar ao valor exibido atualmente; dois . em um número não deve ser aceito. História de usuário # 12: Eu deveria ser capaz de executar qualquer operação (+, -, *, /) em números que contenham pontos decimais. História do usuário nº 13: Se dois ou mais operadores forem inseridos consecutivamente, a operação realizada deve ser o último operador inserido. História de usuário # 14: Pressionando um operador imediatamente após = deve iniciar um novo cálculo que opera no resultado da avaliação anterior. História de usuário # 15: Minha calculadora deve ter várias casas decimais de precisão quando se trata de arredondamento (note que não existe um padrão exato, mas você deve ser capaz de lidar com cálculos como 2 / 7 com precisão razoável para pelo menos 4 casas decimais) . Nota Na lógica da calculadora: Deve-se notar que existem duas principais escolas de pensamento na lógica de entrada da calculadora: lógica de execução imediata e lógica de fórmula . Nosso exemplo utiliza lógica de fórmula e observa a ordem de precedência de operação, a execução imediata não. Qualquer um é aceitável, mas observe que, dependendo de qual escolher, sua calculadora pode produzir resultados diferentes dos nossos para certas equações (veja o exemplo abaixo). Contanto que sua matemática possa ser verificada por outra calculadora de produção, por favor, não considere isso um bug. EXEMPLO: 3 + 5 x 6 - 2 / 4 = - Lógica de Execução Imediata:
11.5 - Fórmula / Expressão Lógica:
32.5
https://cdn.freecodecamp.org/testable-projects-fcc/v1/bundle.js Quando terminar, envie a URL para o seu trabalho. projeto com todos os seus testes passando. Lembre-se de usar o método Read-Search-Ask se você ficar preso. Instructions
Tests
tests: []
Challenge Seed
Solution
// solution required