-
Posts
3.601 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Livros
Cursos
Análises
Fórum
Tudo que Midori postou
-
VisualG programa que receba o nome e duas notas de seis alunos e mostre o relatório
Midori respondeu ao tópico de Eli Almeida em Programação - iniciantes
@Eli Almeidaa Da forma que fez essas estruturas condicionais (Se), a média do segundo aluno só será testada se a do primeiro for maior que 7; A do terceiro se a do segundo for maior que 7... Até chegar no último. Isso significa que se p.ex a média do primeiro não for maior que 7, nenhuma outra será verificada porque você está condicionando a média do anterior para testar os próximos. Então faça as condicionais para cada aluno ter o seu próprio bloco Se...FimSe independente dos outros, Se((Nota1 + Nota2)/2 > 7) então Aprov <- Aprov + 1 FimSe Se((Nota3 + Nota4)/2 > 7) então Aprov <- Aprov + 1 FimSe ... -
VisualG programa que receba o nome e duas notas de seis alunos e mostre o relatório
Midori respondeu ao tópico de Eli Almeida em Programação - iniciantes
@Eli Almeidaa A média é a soma das notas dividida pela quantidade 12. Mas o seu cálculo está primeiro dividindo a nota12 pela quantidade e depois somando com as outras notas. É por isso que deve colocar os parênteses, p.ex: (nota1 + nota2 + ... + nota11 + nota12)/12 -
VisualG programa que receba o nome e duas notas de seis alunos e mostre o relatório
Midori respondeu ao tópico de Eli Almeida em Programação - iniciantes
@Eli Almeidaa O cálculo da média ainda está errado como no código anterior, note o que comentei sobre a ordem das operações. Se quer usar a estrutura condicional (Se) dessa forma faltou colocar dentro de um laço. Chegou a ver loop/laço nas aulas de programação? Se vai usar um só duas variáveis para a nota serão necessárias (Nota1 e Nota2). -
VisualG programa que receba o nome e duas notas de seis alunos e mostre o relatório
Midori respondeu ao tópico de Eli Almeida em Programação - iniciantes
@Eli Almeidaa Com laço só precisa de duas variáveis para as notas, p.ex, Se((Nota1 + Nota2)/2 > 7) então Aprov <- Aprov + 1 FimSe Esse teste é só para incrementar a variável dos aprovados que será usada para mostrar o percentual. E para calcular a média acumule o total das notas no laço, Total <- Total + Nota1 + Nota2 Aí é só mostrar os resultados no fim (fora do laço), Escreval("MEDIA DA CLASSE: ", Total/12) Escreval("APROVADOS: ", Aprov/6 * 100, "%") Escreval("REPROVADOS: ", (1 - Aprov/6) * 100, "%") -
VisualG programa que receba o nome e duas notas de seis alunos e mostre o relatório
Midori respondeu ao tópico de Eli Almeida em Programação - iniciantes
@Eli Almeidaa Não precisa de vetores, mas se já viu loop/laço alguma vez poderia aplicar no seu código para ficar mais simples. Aí serão 6 ciclos onde terá que: 1) Calcular a média de cada aluno e incrementar uma variável para aprovados (ou reprovados) que deverá ser usada no fim para o percentual; 2) Acumular o total das notas para calcular a média da classe no fim. No cálculo da média faltou colocar os parênteses para somar as notas antes. Lembre-se da ordem das operações matemáticas. Assim só está tentando pegar a média de um aluno. Esse teste deve ser feito para cada aluno. E aí também faltou parênteses como comentei acima. -
@Pablo.Mascarenhas Agora é só pegar as duas variáveis e efetuar a soma desses resultados. Obs: Veja o alerta do seu compilador sobre a função gets. No lugar dessa prefira fgets que é mais segura por ter um parâmetro para limitar a quantidade de caracteres.
-
@Pablo.Mascarenhas Se não houver restrição em tratar as entradas só como string será mais simples. Aí sua função pode ter dois parâmetros: Um para a string e outro para identificar o tipo de soma (contar as letras ou dos dígitos), p.ex, int resultado(char *str, int tipo){ int soma = 0; while(*str){ if(tipo){ if(*str != ' '){ soma += 1; } }else{ soma += *str -'0'; } str += 1; } return soma; } O loop vai até o terminador nulo, para somar os dígitos quando o segundo parâmetro recebe zero ou contar quando diferente, printf("%d\n", resultado("9181", 0)); Sobre como somar os resultados do seu código, deixe apenas uma função main e pegue as variáveis que adicionou a quantidade de letras e dígitos, p.ex, printf("%d\n", res + cont);
-
Word criar arquivos individuais nomeados, gerados por mala direta
Midori respondeu ao tópico de Bianca Chagas em Microsoft Office e similares
@Bianca Chagas Veja se este tópico ajuda, https://www.clubedohardware.com.br/forums/topic/1598381-código-vba-para-salvar-folhas-de-ponto-em-pdf-já-agrupadas-por-filial -
Excel Automatizar substituições de palavras no excel
Midori respondeu ao tópico de Antonio Baptista em Microsoft Office e similares
@Antonio Baptista Sua planilha está no format xlsx. Então essa linha deve ser editada para procurar clientes.xlsx. -
Excel Caixa de Diálogo para informação
Midori respondeu ao tópico de paulocezarpicos em Microsoft Office e similares
@paulocezarpicos Para esse critério a mensagem deve ser apresentada quando houver edição na coluna D? -
Excel vba - preciso fazer uma sub com algumas regras de if
Midori respondeu ao tópico de isabela queiroz em Microsoft Office e similares
@isabela queiroz Para testar o status da coluna 9, em vez da 6 como anteriormente, modifique a atribuição da segunda constante e deixe a condição assim, If Tabela(Linha, STATUS1) = "inactive" _ And Tabela(Linha, STATUS2) <> "In Process - Qual" Then -
Excel Separar o número em grupos de cinco
Midori respondeu ao tópico de GENECIOFICIAL em Microsoft Office e similares
@GENECIOFICIAL A função pode ser usada de várias formas, na planilha p.ex é só digitar em B1 =NovoNumero(A1). -
Excel Automatizar substituições de palavras no excel
Midori respondeu ao tópico de Antonio Baptista em Microsoft Office e similares
@Antonio Baptista A automatização deve ser feita via VBA na planilha que vai abrir a outra para efetuar as substituições. Para isso tem a função Replace onde você informa o valor a ser procurado e o novo, Sub Substitui(Planilha As Worksheet) Dim Palavra As Variant For Each Palavra In Array( _ "avenida|av.", "apartamento|ap.", "Condominio|cond.") Call Planilha.Cells.Replace( _ What:=Split(Palavra, "|")(0), _ Replacement:=Split(Palavra, "|")(1)) Next Palavra End Sub Assim é só passar a planilha como argumento para a Sub, p.ex, Sub MacroSubstitui() Call Substitui(Workbooks.Open("C:\Clientes.xls").ActiveSheet) End Sub Cole os dois procedimentos no módulo e execute a MacroSubstitui para procurar o arquivo C:\Clientes.xls e fazer as substituições na planilha ativa ou em alguma outra caso queira especificar o nome da aba. -
Excel vba - preciso fazer uma sub com algumas regras de if
Midori respondeu ao tópico de isabela queiroz em Microsoft Office e similares
@isabela queiroz Pode ser assim, Set Tabela = ThisWorkbook.Sheets("Carga").[A2].CurrentRegion -
Excel Retornar valores no excel
Midori respondeu ao tópico de Keu Borges em Microsoft Office e similares
@Keu Borges Nesse caso como as entradas na coluna GR não são em ordem alfabética, podemos considerar a tabela ASCII para pegar a posição da letra com a fórmula CÓDIGO e assim comparar com MOD. Nessa tabela 65 é A, 66 É B, etc. Então é só calcular a diferença da letra em GR com A para fazer o teste, =SE(MOD(COL()-2;4)=CÓDIGO($A3)-CÓDIGO("A");"F1";"") -
Excel vba - preciso fazer uma sub com algumas regras de if
Midori respondeu ao tópico de isabela queiroz em Microsoft Office e similares
@isabela queiroz Veja se assim resolve, Sub RemoveLinha() Const STATUS1 As Integer = 4 Const STATUS2 As Integer = 6 Dim Tabela As Range Dim Linha As Long Set Tabela = [A2].CurrentRegion For Linha = Tabela.Rows.Count To 1 Step -1 If Tabela(Linha, STATUS1) = "inactive" _ And Tabela(Linha, STATUS2) = "Cancelled" Then Tabela.Rows(Linha).EntireRow.Delete End If Next Linha End Sub -
Excel vba - preciso fazer uma sub com algumas regras de if
Midori respondeu ao tópico de isabela queiroz em Microsoft Office e similares
@isabela queiroz Isso deve acontecer no momento da edição da célula ou quer fazer um loop para verificar esses casos? E para essas condições é a linha toda que deve ser removida? -
Excel Retornar valores no excel
Midori respondeu ao tópico de Keu Borges em Microsoft Office e similares
@Keu Borges Se analisar as fórmulas separadamente fica mais fácil. MOD retorna o resto de uma divisão onde o primeiro parâmetro é o dividendo e o segundo o divisor. Com ela podemos criar uma espécie de ciclo de intervalos e fazer retornar entre 1 e 4 ao arrastar para todas as células. Se pegar este trecho verá como fica a tabela, =MOD(COL()-2;4)+1 CORRESP é para comparar com esses valores já que ela vai retornar posição da busca em um vetor/arranjo. O primeiro parâmetro é do o valor que deve ser procurado e o segundo é a lista de valores do vetor. Como ele tem 4 elementos de A até D, só retorna valores de 1 a 4. Portanto A é 1 porque está na primeira posição, etc. =CORRESP($A3;$A$3:$A$6;0) No lugar de CORRESP também daria para usar a fórmula que retorna a linha e ficaria mais simples. Aí quando a condição testar verdadeiro para valores iguais retorna F1. -
Excel Retornar valores no excel
Midori respondeu ao tópico de Keu Borges em Microsoft Office e similares
@Keu Borges Se entendi o que quer fazer é para colocar o F1 nessas colunas específicas, de 4 em 4, de acordo com a posição da letra da coluna GR: Para a primeira (nesse caso A), começa na primeira coluna; Para a segunda (B), começa na segunda coluna e assim por diante. Veja se é isto, cole em B3 e arraste para as outras, =SE(MOD(COL()-2;4)+1=CORRESP($A3;$A$3:$A$6;0);"F1";"") -
Excel Elaboração de Fórmula de busca
Midori respondeu ao tópico de Scofieldgyn em Microsoft Office e similares
@Scofieldgyn Com PROCV vai conseguir. Depois deve tentar resolver a questão de retornar a coluna com CORRESP. Se tiver dificuldade teste apenas a fórmula CORRESP numa célula em branco para ver se ela retorna a coluna correta. -
Excel Elaboração de Fórmula de busca
Midori respondeu ao tópico de Scofieldgyn em Microsoft Office e similares
@Scofieldgyn Se fizer por partes fica mais fácil. Aplique apenas a fórmula PROCV e coloque o deslocamento (índice da coluna) manualmente, como faria numa consulta comum. Verá que no caso do GC.G1 / Del Valle deve ser 6 e retornará 10.204,73. O próximo passo é deixar o índice da coluna automático e para isso é só editar o PROCV e colocar CORRESP como no exemplo que comentei. -
VisualG Resultado final dando 0
Midori respondeu ao tópico de juniorbenz7 em Programação - iniciantes
@juniorbenz7 É algo com a sua versão referente ao comando 'escolha' para strings. Neste tópico já comentaram sobre isso, https://www.clubedohardware.com.br/forums/topic/1363147-função-escolha-não-está-dando-certo/ -
Excel Separar o número em grupos de cinco
Midori respondeu ao tópico de GENECIOFICIAL em Microsoft Office e similares
@GENECIOFICIAL O código que postei neste tópico faz isso, https://www.clubedohardware.com.br/forums/topic/1636817-inserir-virgula-após-uma-quantidade-de-caractere-determinada/ Só tem que editar a parte onde separa por vírgula para ficar o espaço, N = N & " " & Mid(Numero, I, 5) Aí é só passar o valor de A1 para a função. -
Excel Inserir virgula após uma quantidade de caractere determinada
Midori respondeu ao tópico de Zamboni_du em Microsoft Office e similares
@Zamboni_du É só passar o retorno do InputBox para a função, p.ex, MsgBox NovoNumero(Application.InputBox("Sequencia")) -
Outro Instalação da Biblioteca SDL_image no Windows (Github)
Midori respondeu ao tópico de Cris.Pavani em Programação - outros
@Cris.Pavani Na página releases tem as versões para Visual Studio e Mingw, baixe a versão do seu ambiente e descompacte o arquivo. No IDE configure os diretórios e as dependências.
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais
Direitos autorais
Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais