Tutora Mayla

Respostas no Fórum

Visualizando 30 posts - 151 até 180 (de 341 do total)
  • Autor
    Posts
  • em resposta a: Distribuição de aplicativo #69121
    Tutora Mayla
    Mestre

    Leandro, nos arquivos do seu projeto o Android Studio cria um instalador .apk sempre que o aplicativo é compilado. Este arquivo normalmente fica localizado em <Pasta do Projeto>/app/build/outputs/apk/debug/app-debug.apk. Este arquivo pode ser carregado nos celulares Android e executado para instalar o seu aplicativo.
    Vale ressaltar que o Android tem como método de distribuição oficial de aplicativos a Play Store e por motivos de segurança desencoraja a instalação de aplicativos utilizando os arquivos .apk. Também vale destacar que é necessário alterar a configuração que permite a instalação de aplicativos vindos de fontes externas nos celulares que quiser instalar seu aplicativo, já que esta configuração é desabilitada por padrão.

    Espero ter ajudado, quaisquer outras dúvidas basta entrar em contato.

    em resposta a: Exercício 28 #69120
    Tutora Mayla
    Mestre

    Ana Paula, seu código está certo! Parabéns!
    Algumas dicas sobre ele apenas:

    • Nesta linha escreva(“\n\\t\t5\t\t NATAL [-5%]”) corrija a tabulação retirando uma das barras depois do \n
    • Uma dica é utilizar a função de arredondamento para configurar a quantidade de casas decimais que será exibida, neste tópico explica-se como utiliza-la Sobre usar a biblioteca Matematica

    Espero ter ajudado, quaisquer dúvidas estamos a disposição.

    em resposta a: Ajuda com STRUCT #68991
    Tutora Mayla
    Mestre

    Murillo, na leitura da matrícula, RA e matrícula do professor deveriam estar sendo passados no scanf o endereço das variáveis e não seus valores. Para isto basta fazer scanf(“%i”,&ptr_estudante->matricula_aluno); e fazer de forma semelhante para os demais.
    Espero ter ajudado, quaisquer dúvidas estamos a disposição.

    em resposta a: M02A06-Ex26 (Inicialização de variáveis) #68917
    Tutora Mayla
    Mestre

    Nuno, parabéns pela dedicação, seu código melhorou muito e tenho certeza de que aprendeu muito também!
    Uma última consideração sobre o seu código, para converter uma operação para real é necessário converter um operando e não a operação inteira.
    O certo seria assim r = t.inteiro_para_real(n1) / n2 como estava sendo feito anteriormente. Aqui o que acontece é que converte-se um operando e depois a operação é feita de forma real.
    Feito desse jeito r = t.inteiro_para_real(n1 / n2) o truncamento ainda existe, o que acontece aqui é que a operação é feita de forma inteira, e o resultado truncado é convertido para real.
    E quanto as operações de soma, subtração e multiplicação, estas não precisam da função inteiro_para_real pois como seu resultado sempre será inteiro e não haverá perda de valores (igual acontece na divisão se for feita de forma inteira) basta fazer a conta normalmente e atribuir a variável real que será convertida automaticamente adicionando o zero após o ponto.
    É possível atribuir valores inteiros a variáveis reais, o que acontecerá é que será adicionado o .0.
    É possível atribuir valores reais a variáveis inteiras, o que acontecerá é que o valor será truncado, ou seja, perderá o que há após o ponto. Isso emitirá um aviso que pode ser ignorado se for a intenção fazer isso, e para retirar o aviso basta converter para real.

    Espero ter ajudado, quaisquer outras dúvidas estamos a disposição.

    Tutora Mayla
    Mestre

    Felipe, a postagem do fórum é editada via html, por isso pode vir a interpretar algumas tags, como img por exemplo que é uma das aceitas.
    Para postar seu código sem problema cole-o aqui, selecione ele e clique em “code” que assim seu código sera postado com a formatação de código.
    Faça esse procedimento então e nos envie novamente o seu código por favor.

    em resposta a: Quando usar a condição “Se” #68843
    Tutora Mayla
    Mestre

    Pedro, a resposta do Icaro está maravilhosa, mas vou complementar de um outro jeito pra ver se te ajuda também.

    Para saber quando usar qual tipo de condição é necessário analisar o problema.

    • Se há uma situação onde só é necessário saber se uma variável tem ou não um valor, o caso mais simples, podemos usar aqui o se apenas. se(num == 1)
    • Se há um caso onde além de precisar saber se uma variável tem um valor, nos precisamos tratar também o caso onde ela tem todos os valores que não são o desejado. Note aqui que o senao irá englobar todos os valores de idade menores que 18, ou seja, tudo que não pertencer ao bloco se. Podemos fazer algo como:
      se(idade >= 18) {...
       }senao {...}
    • Se temos um caso, onde além de precisar saber se uma variável tem ou não um determinado valor, precisamos saber se ela tem outro determinado valor, podemos usar o senao se. Como uma variável não pode conter ambos valores ao mesmo tempo, o que estamos dizendo em forma de código aqui é “se a variável não for uma maça então ela pode ser uma banana” mas nunca ela vai ser maça e banana ao mesmo tempo.
      se(fruta == "maça") {...
      }senao se("fruta == "banana") {...}
      

      se aqui quisermos englobar ainda os casos onde a variável é qualquer fruta que não seja maça ou banana podemos adicionar o senaono final.

      se(fruta == "maça") {...
      }senao se("fruta == "banana") {...
      }senao {...} //aqui é tudo que <strong>não </strong>é maça ou banana
      

      O senao se ajuda a não fazer testes desnecessários, imagine que já foi descoberto que a fruta é uma maça, pra que eu irei testar se ela é também uma banana? Com o senao se, ele só ira fazer o teste se é uma banana se souber que não é uma maça. E só irá para o bloco senao se souber que não é nem maça e nem banana.

    • É possível utilizar uma sequencia como a abaixo :
      se(num == 10){...
      }se(num == 20){...
      }se(num == 30){...}

      Mas como eu expliquei anteriormente não é possível que a variável tenha 2 valores ao mesmo tempo, então nessa situação provavelmente é melhor utilizar o senao ne.

    A condição pode ser finalizada com qualquer um dos 3 tipos, se for apenas um teste básico pode terminar apenas com o se, se for um teste onde se quer englobar todos os casos restantes termina-se com o senao e se for um teste onde eu quero realiza-lo apenas se os teste anteriores derem falsos, pode-se terminar com o senao se.
    Note que só é possível começar com o se(e pode aparecer também no meio e no final), enquanto o senao se pode ser utilizado no meio e no final e o senao só pode ser utilizado no final.
    O código abaixo é um exemplo de código ERRADO pois todo senao se e todo senao tem que estar associado a um se escrito imediatamente anteriormente:
    Senao se(nome == "Mayla").

    Não mencionei aqui se aninhados, se houver dúvida sobre como utilizar blocos condicionais aninhados basta deixar sua dúvida aqui que lhe ajudaremos também.

    Espero ter ajudado, quaisquer dúvidas estamos a disposição. Bons estudos!

    em resposta a: listar dados do banco de dados php mysql em colunas #68842
    Tutora Mayla
    Mestre

    Angelo, para criar uma coluna dentro de uma linha da tabela (criada com a tag <tr>) usa-se a tag <td> como você já está fazendo no código que enviou. Para estender isso a mais colunas use mais <td> dentro de uma mesma <tr>. Por exemplo: <tr><td>Coluna 1<td>Coluna 2<td>Coluna 3

    Espero ter ajudado, caso a dúvida persista volte a entrar em contato.

    em resposta a: Eu não sei usar o portugol estudio. #68841
    Tutora Mayla
    Mestre

    Orlando, nos envie por favor qual o erro que está acontecendo, se possível mande-nos um print.
    Na aula M00A04 – Primeiro Programa o professor ensina a fazer o seu primeiro programa e como rodar seu código. E como o aluno Nuno informou, o módulo 01 é onde é possível encontrar mais exercícios iniciais e dicas sobre como utilizar o PortugolStudio.

    Tutora Mayla
    Mestre

    Felipe, movi a sua dúvida para este tópico que trata do mesmo assunto. Há uma resposta minha aqui explicando o porque deste problema acontecer, dê uma olhada nela e se ainda houver dúvidas volte a entrar em contato.
    Antes de criar um tópico é sempre bom verificar se já existe um tópico sobre o assunto, utilize a barra de pesquisa no fórum para procurar por tópicos já existentes.
    Espero ter ajudado, quaisquer dúvidas basta entrar em contato.

    em resposta a: M02A06-Ex26 (Inicialização de variáveis) #68835
    Tutora Mayla
    Mestre

    Nuno, uma dica sobre postagens de códigos no fórum é usar a configuração de texto “code”, após colar o código selecione ele todo e clique em code, assim ele ficará formatado na postagem e facilitará bastante a leitura.
    Alguns pontos sobre o seu código e suas dúvidas:

    • Um código menor não necessariamente significa um código melhor, tenha bastante cuidado com isso. Nessa questão aconteceu do melhor código ser menor, mas nem sempre será assim.
    • A inicialização das variáveis pode ser feita na declaração também, do jeito que está no seu código não está errado, só estou mostrando outra forma de fazer. inteiro n1=0, n2=0, r=0
    • No menu do programa, estão faltando os números das opções, já que a escolha da opção pode ser feita tanto por número quanto pelo símbolo da operação. Acredito que seria melhor escolher uma das duas formas, mas já que as duas estão sendo utilizadas seriam bom o menu estar com os números também, algo como:
      escreva("\n 1. + 	Adição")			    
      escreva("\n 2. -	Subtração")			
      escreva("\n 3. *	Multiplicação")
      escreva("\n 4./	Divisão")
    • No escolha, estão sendo testados os casos 1,2,4,5 não deveriam ser 1,2,3,4?
    • No caso 2, acredito que tenha sido esquecido um escreva que não pertence ali.
      caso '-': caso '2':
      escreva("Você escolheu a operação [-]")
      <strong>escreva("\n\nDigite o primeiro número: ")</strong>
      r = (n1 - n2)
    • Para que o resultado da divisão saia como real, é necessário que a variável que irá armazenar o valor seja real. Ou seja, a variável r tem que ser do tipo real em vez do tipo inteiro.
    • Quanto a escrever o tipo da operação na hora de mostrar o resultado, também pode ser feito de forma genérica utilizando o bloco escolha. Crie uma variável do tipo cadeia chamada tipoOp(por exemplo), em cada caso do escolha atribua a ela a cadeia referente ao nome da operação, e por fim escreva no final do programa escreva("\nResultado da " + tipoOp + " = " + r)
      Um exemplo de como ficaria no escolha:

      
      caso '+': caso '1': 
      escreva("Você escolheu a operação [+]")
      r = (n1 + n2)
      tipoOp = "SOMA"
      
    • Voltando ao ponto que mencionei sobre a escolha podendo ser feita por números ou pelo símbolo do operador, caso seja feita por números nessa linha escreva("\nA calcular o valor de " + n1 + op + n2) acontecerá um problema, veja qual a melhor forma de estruturar o programa para que não haja esse pequeno problema.

    Parabéns pela dedicação! Espero ter ajudado, quaisquer dúvidas basta entrar em contato.

    em resposta a: problemas para upload de video no android studio code 4.1 #68649
    Tutora Mayla
    Mestre

    Balys, tente usar um conversor de vídeos antes. O professor Guanabara recomenda o Handbreak, que é grátis e ótimo. Teste alguns formatos e nos avise de volta quando encontrar algum que funcione.
    Espero ter ajudado, quaisquer outras dúvidas estamos a disposição.

    em resposta a: SESSION NÃO FUNCIONA EM PRODUÇÃO #68648
    Tutora Mayla
    Mestre

    Tiago, o professor Guanabara vai verificar qual pode ser esse problema em produção, assim que tivermos novidades sobre o que pode estar acontecemos entramos em contato para lhe informar.

    em resposta a: M02A06-Ex26 (Inicialização de variáveis) #68647
    Tutora Mayla
    Mestre

    Nuno, na verdade depende de como o código está estruturado. O problema do código foi que não havia uma inicialização fora de um bloco condicional.
    Se houvesse um caso contrario no final também inicializando as variáveis esse problema não ocorreria, pois se não fossem nenhuma das condições entraria nele e as variáveis seriam inicializadas.
    Depende muito do problema a ser resolvido e de como o código está estruturado, deve-se prestar atenção e ver onde cabe ou não inicializar as variáveis na declaração.

    Alguns pontos sobre o seu código:

    • Perceba que a seguinte parte do código é repetida em todos os casos
      
      escreva("\n\nDigite o primeiro número: ")
      leia(n1)
      escreva("Digite o segundo número: ")
      leia(n2)
      

      Como essa parte ocorre sempre independente do caso, ela pode ser colocada antes do escolha para evitar a repetição desnecessária. Colocando esta parte fora do escolha, o erro de variáveis não inicializadas some, mesmo sem inicializar algum valor para elas na declaração, pois elas serão inicializadas sempre na leitura.

    • Outro ponto que percebi é que seu código não realiza as operações em si, apenas tem como saída que está calculando o valor.
      Em vez de colocar dentro do escolha a leitura de variáveis, que é padrão para todas as operações como eu mencionei anteriormente, dentro do escolha deverão ficar as operações matemáticas. Algo semelhante a:

      caso '+': 
      	res = n1 + n2
      	pare
       caso '-':
      	res = n1 - n2
      	pare
      

      E após a linha onde informa que o cálculo está sendo feito no final do código, basta acrescentar uma linha escrevendo o valor de res, ou seja, a variável responsável pelo valor resultado.
      É interessante aqui ter apenas uma variável para resposta pois assim podemos tornar a saída de resposta genérica, podendo escrever o valor apenas no final como res. Se tivéssemos uma variável responsável por armazenar a soma, uma pela subtração e assim por diante seria necessário ou escrever a resposta dentro do bloco escolha ou ainda realizar outro condicional para saber qual seria a resposta certa a escrever.

    • Notei também que as seguintes variáveis não estão sendo utilizadas, qual seria sua intenção com elas? Elas são mesmo necessárias?
      
      s = "SOMA"
      sub = "SUBTRAÇÃO"
      m = "MULTIPLICAÇÃO"
      d = "DIVISÃO"
      
    • Após ter feito essas alterações que sugeri no bloco escolha, uma forma de melhorar ainda mais o seu código seria tratar o erro onde foi digitada uma opção inválida, para isto basta adicionar um caso contrario no escolha onde seria escrito um erro informando opção incorreta, pois só entraria nele se não fosse nenhum dos valores que o programa aceita.

    Espero ter ajudado, se ainda houver dúvidas volte a entrar em contato que lhe ajudaremos.
    Continue se dedicando assim e será cada vez um programador melhor, bons estudos!

    em resposta a: Problemas no Code Block 20.3 #68546
    Tutora Mayla
    Mestre

    Lucas, poderia por favor nos informar mais detalhes do seu problema? E qual o seu sistema operacional?
    Uma tentativa de solucionar o problema seria criar um arquivo novo, tente por favor e nos diga se funcionou.

    em resposta a: MOD 03 EX 038 #68544
    Tutora Mayla
    Mestre

    Bruno, parabéns pelo seu código! Continue se dedicando e será um programador cada vez melhor!
    Se houver quaisquer dúvidas basta entrar em contato que lhe ajudaremos.

    em resposta a: M02A06-Ex26 (Inicialização de variáveis) #68543
    Tutora Mayla
    Mestre

    Nuno, o seu código está certo o problema aí é que as vezes o programa precisa ter certeza que a variável não está vazia, pois como todas são inicializadas em blocos condicionais caso não é possível saber se a execução entrará em um bloco e iniciará a variável. Para resolver isto basta na declaração das variáveis fazer inteiro n1=0, n2=0 pois assim elas terão sempre algum valor, mesmo que zero.

    Espero ter ajudado, quaisquer outras dúvidas estamos a disposição.

    em resposta a: Dica para a resolução do exercício 11. #68263
    Tutora Mayla
    Mestre

    Alkindar, uma forma de encontrar a qual semestre um mês pertence utilizando apenas matemática pura seria utilizar-se da divisão inteira.
    Ao dividirmos 1 à 5 por 6 obtemos 0, dividindo 6 à 11 por 6 obtemos 1, ao dividirmos 12 por 6 obtemos 2. Pense como é possível utilizar essa informação para somando ou subtraindo valores chegarmos ao resultado: meses de 1 à 6 dão resultado 1 e meses de 7 à 12 dão resultado 2.
    Tente realizar essa conta sozinho, caso precise de ajuda ou queira saber qual a solução que eu pensei para tal problema, volte a entrar em contato.

    Espero ter ajudado, quaisquer outras dúvidas estamos a disposição.

    em resposta a: Background color (button) #68252
    Tutora Mayla
    Mestre

    Leandro, tente utilizar as possíveis soluções dadas nas respostas acima. Caso não resolvam o seu problema, volte a entrar em contato nos enviando o seu código e os erros que estão ocorrendo.

    em resposta a: MOD 03 EX 038 #68168
    Tutora Mayla
    Mestre

    Antonio, vamos analisar a seguinte parte do seu código:

    
    se(contador	==	1	e	sexo	==	"F")
    			{
    				maisjovem		=	nome
    				idadenova		=	idade
    				
    				maisvelha		=	nome
    				idadevelha	=	idade	
    			}
    			
    			senao 
    			{	
    				se(contador	==	1	e	sexo	==	"M")
    			
    				{
    					maisjovem_m	=	nome
    					idadenovo		=	idade
    
    					maisvelho		=	nome
    					idadevelho	=	idade		
    				}
    				
    

    Imagino que aqui sua vontade tenha sido inicializar tanto o primeiro homem quanto a primeira mulher, porém desta forma isto não é possível já que não há como a primeira entrada de dados ser F e M ao mesmo tempo.
    se(contador == 1 e sexo == "F")
    se(contador == 1 e sexo == "M")
    Aqui o teste feito é se a primeira entrada é F ou se a primeira entrada é M, se na primeira entrada se inicializa o F a partir das demais(contador > 1) não será inicializado o M e vice versa.
    Uma das soluções para resolver isto é criar mais 2 contadores que serão responsáveis por contar o número de F e de M, um exemplo seria:
    se(contadorF == 0 e sexo == "F")
    se(contadorM == 0 e sexo == "M")
    Assim não se fica restrito a primeira iteração do programa e sim a primeira entrada de dados F e M. Já que sempre um será lido antes do outro. E a variável contador fica responsável apenas por limitar a entrada a 5. E as variáveis contadorF e contadorM servem apenas para verificar se é a primeira mulher e se é o primeiro homem, ou seja se está como 0 ou não. Ressalto que é apenas um exemplo de como resolver, exercite sua lógica e pense em outras formas de se chegar a uma solução.

    Outro ponto que causa erro no seu código em decorrência do erro anterior é: idadenovo = 0
    Se não houvesse o erro anterior essa parte do código estaria correta, mas por conta do erro anterior aqui vira um erro também.
    O que acontece é que como temos que o valor inicial é 0, não há como uma idade inserida ser menor que 0, logo acontece o erro relatado de não sair um valor referente ao homem mais novo. Já para o homem mais velho funciona pois está sendo testado se o valor é maior que 0. É importante notar aqui que o erro só acontece no homem mais novo pois a primeira entrada de dados foi uma mulher, caso a primeira entrada seja um homem o erro seria na mulher mais nova.
    Ao realizar testes busque sempre utilizar dados distintos em ordens distintas assim garantimos que está funcionando para vários casos, e conseguimos achar os casos onde não funciona se existirem.

    Espero ter ajudado, se a dúvida persistir ou houver quaisquer outras dúvidas basta entrar em contato.
    E parabéns pelo seu código, apesar dessa pequena falta de atenção ele está bom, continue se dedicando e será um programador cada vez melhor.

    em resposta a: EX009 Média aluno não funciona e não acusa erro! #68166
    Tutora Mayla
    Mestre

    Murillo, o que está acontecendo no seu código é que a conta da média está sendo feita antes dos valores serem lidos, para resolver basta colocar essa linha
    media = (nota1 + nota2) /2;
    abaixo da leitura das duas notas, ou seja abaixo desta parte do código:

    
    printf(“\nDigite a primeira nota: “);
    scanf(“%f”,&nota1);
    
    printf(“\nDigite a segunda nota: “);
    scanf(“%f”,&nota2);
    

    Espero ter ajudado, quaisquer outras dúvidas estamos a disposição.

    em resposta a: Exercício 010 – Módulo 001 – Não Fume. #68165
    Tutora Mayla
    Mestre

    Joab, movi o seu tópico para um já existente sobre o assunto, sempre antes de postar procure se já há um tópico sobre o assunto.
    Neste tópico há explicações minhas e do Icaro sobre a questão, veja se tais explicações lhe ajudam, caso não volte a entrar em contato que lhe ajudaremos.

    em resposta a: Aula M00A07 – Primeiro programa #68164
    Tutora Mayla
    Mestre

    Bruno, que bom que conseguiu resolver seu problema! Obrigada por compartilhar com a comunidade, assim nos ajuda a criar uma comunidade cada vez melhor!
    Se houver quaisquer outras dúvidas, basta entrar em contato que lhe ajudaremos.

    em resposta a: Exercício 004 operações aritméticas #67884
    Tutora Mayla
    Mestre

    Joab, seu código está certo, parabéns!
    Sugiro apenas uma melhoria já que há uma linha dele que não está sendo utilizada.
    Em vez de fazer a atribuição inteiro divisaoReal = n1 / n2 que não está sendo utilizada, faça: inteiro divisaoReal = tp.inteiro_para_real(n1)/n2 e no escreva apenas ponha a variável divisaoReal de forma semelhante aos outros comandos escreva.

    Ressalto que nesse exercício não há problema em fazer a conta ou atribuindo à variáveis ou direto no escreva, mas como a maioria das contas está sendo atribuída a uma variável, é uma boa prática manter a consistência para ajudar na leitura do seu código.

    Espero ter ajudado, quaisquer outras dúvidas estamos a disposição.

    em resposta a: Background color (button) #67882
    Tutora Mayla
    Mestre

    Balys, que bom que funcionou!
    Se houver quaisquer outras dúvidas basta entrar em contato que lhe ajudaremos.

    em resposta a: M01A05 Exercício II #67817
    Tutora Mayla
    Mestre

    Pamella, poderia por favor nos enviar qual o erro que está acontecendo? E postar também o seu código por favor para que possamos entender melhor a situação.

    Tutora Mayla
    Mestre

    Douglas, como mencionado pelo Icaro já havia um tópico sobre este assunto, logo mesclei ambos.
    Acredito que a resposta do Icaro responda a sua dúvida, caso haja mais alguma dúvida basta entrar em contato que lhe ajudaremos.

    em resposta a: Background color (button) #67737
    Tutora Mayla
    Mestre

    Balys, poderia por favor nos enviar o seu código XML para podermos te ajudar da melhor forma possível?

    Tente substituir no seu código android:backgroundTint por app:backgroundTint e nos diga se funciona.

    Espero ter ajudado, quaisquer outras dúvidas basta entrar em contato.

    Tutora Mayla
    Mestre

    Rudiberto, este erro está ocorrendo pois no seu código é feita a busca pelo elemento com id “imagem” em var img = window.document.getElementById('imagem'), porém não existe nenhum elemento com este id no seu HTML (<img src="noite.png" alt="Foto do dia">). Para resolver este problema adicione o id à tag de imagem e teste novamente.

    Espero ter ajudado, quaisquer outras dúvidas basta entrar em contato.

    em resposta a: modulo-01 aula001 desafio-02 #67678
    Tutora Mayla
    Mestre

    Joab, que bom que o aluno Murillo conseguiu te ajudar a entender!
    Murillo, parabéns pela resposta! São iterações assim que constroem uma comunidade cada vez melhor.

    Se houver quaisquer outras dúvidas basta entrar em contato que lhes ajudaremos.

    em resposta a: Não consegui fazer download do Xirrus #67677
    Tutora Mayla
    Mestre

    Ana, mesclei o seu tópico com um que já fala sobre o assunto, antes de criar um tópico sempre procure no fórum se já existe um tópico sobre o assunto.

    É possível baixar o Xirrus através deste link Download Xirrus.
    Espero ter ajudado, quaisquer outras dúvidas estamos a disposição.

Visualizando 30 posts - 151 até 180 (de 341 do total)