pcdesignerce
Members-
Total de itens
2 -
Registro em
-
Última visita
Reputação
0 ComumSobre pcdesignerce
-
pessoal bom dia como criar este algoritimo
pcdesignerce respondeu ao tópico de credson em Javascript
Fiz o esboço de uma ideia pra você, mas ainda não sou programador, apenas no inicio do estudo da linguagem. muita coisa pra melhora, mas consegue o resultado. as perguntas são feitas aleatoriamente, mas não foi feita nenhuma filtragem para não repetir as perguntas, como disse tem muita coisa pra arrumar, de repente mudar tudo. //Objeto com lista de transportes const transportes = { terrestre: { carro: ['portas', 'pneus', 'motor'], bicicleta: ['pneus', 'pedal', 'direção'] }, aerio: { balão: ['ar quente'], avião: ['asas', 'motor'] }, aquatico: { barco: ['vela', 'madeira'], lancha: ['motor', 'alumínio'] } } // array de perguntas para tipo de transportes const tipo = ['É terrestre', 'É aquático', 'É aério'] // arrays de perguntas para transportes por tipo const terrestre = ['Tem direção', 'Tem pneus', 'Tem pedal', 'Tem pneus', 'Tem motor']; const aquatico = ['a', 'b', 'c'] // cria essas perguntas conforme os objetos const aerio = ['d', 'e', 'f'] // cria essas perguntas conforme os objetos function fazerPerguntas(perguntas) { let pergunta let resposta do { let indice = Math.floor(Math.random() * perguntas.length) pergunta = perguntas[indice]; resposta = prompt(pergunta) } while (resposta !== 'sim') return pergunta.normalize('NFD').replace(/[\u0300-\u036f]/g, "").toLowerCase() } function resposta(obj) { let rs = fazerPerguntas(tipo); //fomata a pergunta pegando apenas o tipo de transporte que vem imbutido na pergunta tipoTansp = rs.slice(2); const transporte = filtrarTiposTransportes(obj, tipoTansp) return transporte } const resultado = resposta(transportes) console.log(resultado) function filtrarTiposTransportes(obj, tipoTansp) { let caracteristicas = [] let transporte = [] for (const key in obj) { if (key === tipoTansp) { const rsTipo = obj[key] rs = filtrarTranasporte(rsTipo) transporte = rs[0] caracteristicas = rs[1] while (caracteristicas.length > 1) { rs = filtrarTranasporte(rsTipo) caracteristicas = rs[1] transporte = rs[0] } } } return transporte.length === 1 ? transporte[0] : 'Não encontrado' } function filtrarPergunta (tipoTansp) { if(tipoTansp === 'terrestre') return terrestre; if(tipoTansp === 'aerio') return aerio; if(tipoTansp === 'aquatico') return aquatico; } function filtrarTranasporte(rsTipo) { let caracteristicas = [] let transporte = [] for (const key in rsTipo) { const tipo = filtrarPergunta(tipoTansp) perguntaCaracteristica = fazerPerguntas(tipo).slice(4); const objKey = (rsTipo[key]) const filtro = e => e.normalize('NFD').replace(/[\u0300-\u036f]/g, "").toLowerCase() === perguntaCaracteristica; const resultado = objKey.find(filtro) if(resultado !== undefined) { transporte.push(key) caracteristicas.push(objKey) } } return [transporte, caracteristicas] } espero que ajude e que nos ajude. -
Eslint acusa erros em funções e objetos do javascript
pcdesignerce postou um tópico no fórum Javascript
tenho um arquivo de configuração do eslint .eslintrc { "root": true, "parser": "@typescript-eslint/parser", "plugins": [ "@typescript-eslint" ], "extends": [ "eslint:recommended", "plugin:@typescript-eslint/eslint-recommended", "plugin:@typescript-eslint/recommended" ] } O eslint está retornando problemas estranhos no arquivo de configuração do jest: jest.config.js const { resolve } = require('path'); const root = resolve(__dirname); module.exports = { rootDir: root, displayName: 'root-tests', testMatch: ['<rootDir>/src/**/*.test.ts'], testEnvironment: 'node', clearMocks: true, preset: 'ts-jest', moduleNameMapper: { '@src/(.*)': '<rootDir>/src/$1', '@test/(.*)': '<rootDir>/test/$1', }, }; na linha 1 - 'require' is not defined. eslint (no-undef): consigo remover esta mensagem com import {resolve} from 'path' na linha 2 - '__dirname' is not defined. Esta variável é tipada com string. removi a mensagem de erro transformando a variável em uma string: resolve('__dirname') na linha module.exports: 'module' is not defined. eslint (no-undef). Posso ignorar a mensagem de erro desta linha com eslint. O problema é o seguinte: estou acompanhado um vídeo no youtube, instalei a mesma versão do node e das dependências do treinamento que estou acompanhado, pra evitar erros. Mas mesmo assim acho muito estranho, pois estas variáveis não são definidas pelo usuário, são variáveis globais do node/javascript. Será que é algum problema na instalação do node, devo atualizar as verões das dependências. Dei uma travada nisso e não encontrei nada a respeito. Se alguém tiver uma solução ou explicação desde já agradeço.- 1 resposta
-
- eslint
- javascript
-
(e mais 2 )
Tags: