Ir ao conteúdo
  • Cadastre-se

devair1010

Membro Pleno
  • Posts

    6.293
  • Cadastrado em

  • Última visita

Tópicos solucionados

  1. O post de devair1010 em aprendendo estrutura de dados c++ foi marcado como solução   
    @RattleHead     você disse que está estudando C++ , mas esse código que você postou é todo da Linguagem  C mesmo , que nada tem haver com   C++ ,  o que acontece é que o C++ aceita os comando da Linguagem C , mas o C++ mesmo é Outra coisa , bem diferente , e no seu código faltou a função principaL que deve ter em todos os programas dessa linguagem ,  c e também no C++ , e poderia ser assim  :
    #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> int main() // essa é a função principaL e todos os programas nessa linguagem deve ter{ { //Declaração das variáveis float nota1, nota2, media, alunos; char op[5]; //Entrada de dados printf("Informe a quantidade de alunos:\n"); do // laço de repeticção faz ao menos uma vez { printf("Digite a primeira nota do aluno: "); scanf("%f",&nota1); printf("Digite a segunda nota do aluno: "); scanf("%f",&nota2); while (char c = fgetc(stdin) != '\n'); // essa linhaserve para limpar o buffer do teclado // senão apresenta problemas tudo , e esse fgetc retira tudo que está no buffer stdin //Processamento media = (nota1 + nota2) / 2; //Saída printf("Media do aluno = %.1f\n",media); printf("outro aluno S/N "); fgets(op,5,stdin); // fgets é melhor para ler do teclado , porém pega apenas string } while (op[0] != 'n'); // fim do laço system("pause"); return 0; }  
  2. O post de devair1010 em Calcular tempo gasto no estacionamento - C foi marcado como solução   
    @Ícaro_Rocha       esse modo de pegar o horário se torna bem difícil , pois para calcular os minutos precisa dividir por sessenta ,  seria melhor pegar um de cada vez   Hora  Minuto  Segundo e fazer os cálculos ,  e além disso no seu código tem outro erro que é os números com casas decimais são separados por ponto final , do sistema inglês , e você colocou vírgula ,   e seu código poderia ser assim  :
    #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> #include <stdlib.h> #include <locale.h> #include <windows.h> #include <time.h> #include <math.h> int main() { setlocale(LC_ALL, "portuguese"); char data[10],aux[3]; char horario[10]; float H_entrada, H_saida, taxa; float M_entrada, M_saida; int hora, minuto, segundo; float S_entrada, S_saida; float tempo; _strdate(data); _strtime(horario); aux[0] = horario[0]; aux[1] = horario[1]; aux[2] = '\0'; hora = atoi(aux); aux[0] = horario[3]; aux[1] = horario[4]; aux[2] = '\0'; minuto = atoi(aux); aux[0] = horario[6]; aux[1] = horario[7]; aux[2] = '\0'; segundo = atoi(aux); printf("Data em inglês %s\n", data); aux[0] = data[0]; data[0] = data[3]; data[3] = aux[0]; aux[0] = data[1]; data[1] = data[4]; data[4] = aux[0]; printf("Data em Portugues %s\n", data); printf("Horario -> %s\n", horario); printf("Hora ----> %d\n", hora); printf("Minuto --> %d\n", minuto); printf("Segundo -> %d\n", segundo); /*printf("\nBem-vindo(a) ao UNEF Parking.\n\nPor favor, insira o cartão. \n\n"); Sleep(3000); printf("Só um momento, estamos fazendo a leitura dos dados.\n\n"); Sleep(3000);*/ printf("\n\nhora de entrada: "); scanf("%f", &H_entrada); printf("minuto de entrada: "); scanf("%f", &M_entrada); printf("Segundo de entrada: "); scanf("%f", &S_entrada); printf("hora atual: "); scanf("%f", &H_saida); printf("Minuto atual: "); scanf("%f", &M_saida); printf("Segund atual: "); scanf("%f", &S_saida); tempo = H_saida - H_entrada; tempo += M_saida - M_entrada; tempo += S_saida - S_entrada; taxa = H_saida - H_entrada; printf("\n\nTempo de estacionamento %.2f", tempo); printf("\nTotal pelo servico :", H_saida - H_entrada); if (tempo/*saida - entrada*/ < 15) { printf("\nVoce esta isento!\n"); } else { printf("\nO servico teve uma taxa de R$ 2,00\n"); } return 0; }  
  3. O post de devair1010 em Média em C com vetores foi marcado como solução   
    @MQTTH    o vetor para armazenar o nome do fornecedor é do tipo string , que na linguagem c se trata de um vetor de char , então
    char nome_fornecedor[5][30]; // pode armazenar ayé cinco nome de 29 caracteres cada um  
  4. O post de devair1010 em exercicio em c - explicar código 3 foi marcado como solução   
    @Loris_mini      creio que uma explicação é  que o ponteiro aponta para o endereço da variável e assim  tanto o ponteiro como a variável compartilham o mesmo endereço de memória , e
    se modificar o valor de um também modifica o outro .  e o mais certo mesmo seria reservar espaço na memória usando a função malloc e no final liberar esse espaço usando a função free .
  5. O post de devair1010 em exercicio em c - impressão do código 2 foi marcado como solução   
    @Loris_mini    a variável a recebe  valor 9 e a variável c o valor 7  e ponteiro ptr1 recebe o endereço da variável a , e  ptr2 recebe o valor de ptr1 mais o valor da variável c , e a soma é igual a  16 , e nesses primeiros três printf   ele escreve os valores dessas três variáveis  a  b  c   ,  como o valor de a e c não foram modificados , eles se mantém os mesmos , mas o b foi modificado pois alterou o valor de ptr2 ,  que do modo que está , eles partilham o mesmo endereço de memória ,  e ao modificar um , modifica o outro , e assim , para a variável b ele escreve o valor 16 ,  e continuando , os outros três printf , são nesse mesmo formato .
  6. O post de devair1010 em Ler espaço em branco em um arquivo. foi marcado como solução   
    @yendvsb    você pode usar o comando    . get(char)  para ler cada caractere do arquivo ,
    while (arquivoS.get(c)) { cout << c; if (c == ' ')cout << "c"; if (c != ' ') { arquivo << (char)(c + 3); } else { arquivo << ' '; } } mas tem outro erro nesse código , que na letra u ele soma apenas 2 , e não descobri porque : 
  7. O post de devair1010 em exercicio em c - impressão do código 1 foi marcado como solução   
    @Loris_mini    Olá  ,  Qual é a dúvida mesmo ? , pois o código está funcionando bem ,  e ele usa ponteiro para trabalhar com os números ,  e o conceito de ponteiros é bem difícil de entender ,  mesmo para quem já tem bastante conhecimento sobre programação , ., . ,   , mas é isso mesmo , no primeiro loop ele vai incrementando o ponteiro e assim desloca para o próximo número da Lista , e no segundo loop ele vai decrementando e assim escreve os números de trás para frente . , . , .   ,. ,. 
  8. O post de devair1010 em PROGRAMA EM C - linha de código foi marcado como solução   
    @Loris_mini      creio que   esse exercício é sobre recursividade , e isso realmente  é bem complicado de entender , mesmo ,  mas essa linha está enviando para a função  exibir_invertido ,  o endereço do caractere que está na posição 1 da string  nome  , ,. ,. . . ,   .
  9. O post de devair1010 em Imprimir itens de um dicionário no formato de tabela, manipulando os inputs. foi marcado como solução   
    @Gabegol4    na comparação você está usando os últimos dados pego do teclado , mas precisa compara com todos , começando de zero  e poderia ser assim  :
    lista = [] list(lista) dados = dict() lista18 = [] lista_de_menor = [] dados['nome'] = str(input('Nome: ')).title() while dados['nome'] != '': dados['idade'] = int(input('Idade: ')) dados['telefone'] = int(input('Telefone: ')) lista.append(dados.copy()) dados['nome'] = str(input('Nome: ')).title() print(f'{"NOME":<15}{"IDADE":<10}{"TELEFONE":<10}') for contatos in lista: print(f'{contatos["nome"]:<15}{contatos["idade"]:<10}{contatos["telefone"]:<10}') if contatos['idade'] >= 18: lista18.append(contatos.copy()) if contatos['idade'] < 18: lista_de_menor.append(contatos.copy()) print('-='*60) print('LISTA TELEFÔNICA COM DE MAIOR') print(f'{"NOME":<15}{"IDADE":<10}{"TELEFONE":<10}') for contatos1 in lista18: print(f'{contatos1["nome"]:<15}{contatos1["idade"]:<10}{contatos1["telefone"]:<10}') print('-='*60) print('LISTA TELEFÔNICA COM DE MENOR') print(f'{"NOME":<15}{"IDADE":<10}{"TELEFONE":<10}') for contatos1 in lista_de_menor: print(f'{contatos1["nome"]:<15}{contatos1["idade"]:<10}{contatos1["telefone"]:<10}')  
  10. O post de devair1010 em exercicio em c - explicar codigo 3 foi marcado como solução   
    @Loris_mini    sim , me pareceu tudo coerente  ,  e você colocou bem explicado , creio que não precisa de tanto ,  e esse código  depois de copiado e colocado no compilador , fica  desorganizado e sem a identação ,  e cada um faz do seu jeito , mas creio que primeiro melhor organizar e identar o código , e usar duas barras para comentar quando for apenas uma linha ,  e deixar os comentários com barra asterisco
    /* asterisco barra
    */ , para blocos de comentário onde tenha várias linhas ,   costumo organizar assim :
    #define _CRT_SECURE_NO_WARNINGS // para usar scanf e outras funções no Visual Studio #include <stdio.h> // biblioteca de entrada e saida de dados da linguagem c int calcular_nota_final(int notas[] [3] , // Funçao que calcula a nota final, recebe int quant_alunos, // como parâmetros a quantidade de alunos e int indice_linha) // a linha onde está armazenado o aluno { int total = 0; // variável local inicializada com valor zero if (indice_linha >= 0 && // Se a linha for maior ou igual a 0 indice_linha < quant_alunos) // e menor do que a quantidade de alunos { int i; // Declaração da variável i, do tipo inteiro for (i = 0; i < 3; i++) // Laço: i começa em 0 e enquanto for menor que 3 { total += notas[indice_linha][i]; // A variável total recebe a soma das notas } } return total; // Retorna - se total } int indice_menor_nota(int notas[] [3] , // Função que procura a menor nota int quant_alunos , int indice_coluna) { int indice = 0, menor_nota, i; // Declaração de variáveis if (indice_coluna >= 0 && indice_coluna < 3) // Condição: se a variável indice_coluna for maior ou // igual a 0 e menor do que 3 { menor_nota = notas[0][indice_coluna]; // A variável menor_nota recebe a menor nota for (i = 1; i < quant_alunos; i++) // Laço: i começa em 1, enquanto for menor do que a // quantidade de alunos { if (notas[i][indice_coluna] < menor_nota) // se a nota na linha i for menor do que a menor nota até então { menor_nota = notas[i][indice_coluna]; // Atualiza a menor nota indice = i; // Atualiza o índice } } } return indice; // Retorna - se o índice / } void imprimir_alunos_com_media(char nomes[][30], int notas[][3], int quant_alunos, int media ) // Função que imprime o nome dos alunos e a média que obtiveram { int i, nota_final; // Declaração de variáveis Locais printf("\nAlunos que obtiveram media acima de %d\n", media); // Exibe na tela os alunos que obtiveram nota acima da média for (i = 0; i < quant_alunos; i++) // Laço: i começa em 0 e enquanto for menor do que a // quantidade de alunos { nota_final = calcular_nota_final(notas, quant_alunos, i);// nota final recebe o retorno da função que calcula // as notas finais if (nota_final > media) // Condição: se a nota final for maior do que a média { printf("%s - %d pontos\n", nomes[i], nota_final); // Exibe na tela o nome do aluno e a nota } } printf("\n"); // Pula uma linha } int indice_maior_nota(int notas[][3], int quant_alunos) // Verifica o índice da maior nota { int i, tmp; // Declaração de variáveis int maior_nota = calcular_nota_final(notas, quant_alunos, 0);// A variável maior_nota recebe o retorno da função // calcular_nota_final int indice_maior_nota = 0; // Declaração da variável indice_maior_nota e // inicialização dela com 0 for (i = 1; i < quant_alunos; i++) // Laço: i começa em 1 e enquanto for menor que a // quantidade de alunos { tmp = calcular_nota_final(notas, quant_alunos, i); // A variável tmp recebe o retorno da função calcular_nota_final , // considerando os parâmetros passados if (tmp > maior_nota) // Condição: se tmp for maior do que a maior nota { maior_nota = tmp; // A maior nota é atualizada indice_maior_nota = i; // Atualiza - se o índice da maior nota } } return indice_maior_nota; // Retorna - se o índice da maior nota } int main() // funcao Principal do Programa { int n; // Declaração da variável Local n printf("Informe a quantidade de alunos: "); // mensagem informativa scanf("%d", &n); // Captura do teclado a qtd de alunos int notas[n][3], i, j, k; // Declaração de variáveis char nomes[n][30]; // Declaração da matriz de nomes for (i = 0; i < n; i++) // Laço: i começa em 0 e enquanto for menor do que n { printf("Informe o nome do aluno[%d]: ", i); // Pede ao usuário que informe o nome do aluno scanf("%s", nomes[i]); // Captura a resposta do usuário e armazena na variável // nome , na posição i for (j = 0; j < 3; j++) // Laço: j começa em 0 e enquanto for menor do que 3 , // serao 3 notas { printf("Informe a nota da prova %d do aluno[%d]: ", j + 1, i); // Pede ao usuário que informe a nota da prova do aluno scanf("%d", &notas[i][j]); // Captura a resposta do usuário e a armazena na matriz de notas } } imprimir_alunos_com_media(nomes, notas, n, 80); // Chama a função que imprime o nome dos alunos com // média acima de 80 printf("Menor nota em cada prova\n"); // Imprime na tela : Menor nota em cada prova for (i = 0; i < 3; i++) // Laço : i começa em 0 e enquanto for menor do que 3 { k = indice_menor_nota(notas, n, i); // A variável k recebe o retorno da função indice_menor_nota , // de acordo com os parâmetros passados printf("Menor nota prova %d: %s - %d pontos\n", i + 1, nomes[k], notas[k][i]); // Escreve A menor nota em determinada prova e o nome do aluno } printf("\n"); // Pula uma linha k = indice_maior_nota(notas, n); // A variável k recebe o retorno da função indice_maior_nota printf("Maior nota do curso: %s - %d pontos\n" , nomes[k], calcular_nota_final(notas, n, k)); // Escreve na tela a maior nota do curso e o nome do aluno de // acordo com a função calcular_nota_final return 0; // Retorna - se para o Windows com valor 0 }  
  11. O post de devair1010 em Dificuldade para calcular média foi marcado como solução   
    @eduheavy   ali ele está somando o valor total dos números apenas uma vez , e precisa ser todas as vezes que inserir um número , então do / while seria melhor , e seu código poderia ser assim  :
    #define _CRT_SECURE_NO_WARNINGS #define cls system("cls"); /******************************************************** Programa: Objetivo: Autor: Luiz Eduardo E. de souza Data: **********************************************************/ #include <stdio.h> #include <stdlib.h> int main() { int numero, qtde1 = 0, qtde2 = 0, qtde3 = 0, qtde4 = 0, qtde = 0, num_total = 0, media,cont=0; do { cls printf("=============================\n"); printf("Selicione as opcao abaixo \n"); printf("=============================\n"); printf("1-) Digite um numero inteiro \n"); printf("2-) Digite 0 para sair \n"); printf("=============================\n"); scanf("%d", &numero); num_total += numero; if (numero > 0 && numero < 10) { qtde1++; // = qtde1 + 1; } if (numero > 10 && numero < 99) { qtde2++; // = qtde2 + 1; } if (numero > 100 && numero < 999) { qtde3++; // = qtde3 + 1; } if (numero > 1000 && numero < 10000) { qtde4++; // = qtde4 + 1; } if (numero > 10000) { qtde++; // = qtde + 1; } if (numero < 0) { printf("Atencao!!! voce digitou um valor invalido."); } }while (numero != 0); media = num_total / (qtde1 + qtde2 + qtde3 + qtde4 + qtde); printf("\nMedia =------ %d\n\n", media); printf("============================================================\n"); printf("Foram digitados %d valores no intervalo de 1 a 9", qtde1); printf("\n==========================================================\n"); printf("Foram digitados %d valores no intervalo de 10 a 99", qtde2); printf("\n==========================================================\n"); printf("Foram digitados %d valores no intervalo de 100 a 999", qtde3); printf("\n==========================================================\n"); printf("Foram digitados %d valores no intervalo de 1000 a 10000", qtde4); printf("\n===========================================================\n"); printf("Foram digitados %d valores no intervalo de numero > 10000", qtde); printf("\n===========================================================\n"); return 0; }  
  12. O post de devair1010 em Meu codigo nao esta reconhecendo valor colocado no SCANF foi marcado como solução   
    @mrkiraz     creio que você não tenha colocado o especificador de tipo da variável adequado no scanf , pois você declarou peso como sendo double   mas fez a leitura como se essa variável fosse float ,  então use a letra L antes do f e tudo Irã bem , e para escrever o double  use mesmo o %.2f
  13. O post de devair1010 em validar o mes de fevereio foi marcado como solução   
    @catherineprokhorov    esses cálculos são mesmos difíceis e esse mês de fevereiro poderia se validado assim  :
    #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> int main() { char carater; int dia_do_nascimento, mes_do_nascimento, ano_do_nascimento; int dia, mes, ano, calcula_idade; int dia1, ano1, mes1; int junto, idade; scanf("%c %d %d %d %d %d %d", &carater, &dia_do_nascimento, &mes_do_nascimento, &ano_do_nascimento, &dia, &mes, &ano); if (mes == 2 && dia > 29) { printf("Data atual invalida !\n"); printf("Fevereiro com %d Dias\n", dia); } else { if (mes == 2 && dia == 29) { if (ano % 4 != 0) { printf("Data actual invalida \n"); printf("mes de fevereiro com 29 dias e Ano nao eh divisiveL por Quatro !\n"); if (ano % 100 == 0) { printf("Data actual invalida \n"); printf("mes de fevereiro com 29 dias e Ano eh divisiveL por Cem !\n"); } if (ano % 400 != 0) { printf("Data actual invalida \n"); printf("mes de fevereiro com 29 dias e Ano nao eh divisiveL por Quatrocentos !\n"); } } } else { if (dia > 31) { printf("Data actual invalida \n"); printf("Nao existe nenhum mes com mais de 31 Dias !\n"); } else { if (dia > 30) { if (mes == 4 || mes == 6 || mes == 9 || mes == 11) { printf("Data actual invalida\n"); printf("mes %d com %d dias\n",mes, dia); } } else { if (dia_do_nascimento > 31) { printf("Data de nascimento invalida \n"); printf("Nao existe nenhum mes com mais de 31 Dias !\n"); } else { if (dia_do_nascimento > 30) { if (mes_do_nascimento == 4 || mes_do_nascimento == 6 || mes_do_nascimento == 9 || mes_do_nascimento == 11) { printf("Data de nascimento invalida \n"); printf("Mes %d so pode ter 30 Dias !\n",mes_do_nascimento); } } else { if (dia_do_nascimento < 1 || dia < 1 || dia_do_nascimento > 31 || dia > 31 ) { printf("Data de nascimento invalida \n"); printf("Nao existe mes com %d Dias !\n",dia); } else { if ((mes_do_nascimento < 1 || mes_do_nascimento > 12) || (ano_do_nascimento <= 1900 || ano_do_nascimento > 2020) || (mes < mes_do_nascimento && ano == ano_do_nascimento)) { printf("Data de nascimento invalida !\n"); if(mes_do_nascimento < 1 || mes_do_nascimento > 12) { printf("só pode ter messes de 1 ate 12 !\n"); } if(ano_do_nascimento <= 1900 || ano_do_nascimento > 2020) { printf("ano do nascimento Fora de Faixa , %d !\n",ano_do_nascimento); } if(mes < mes_do_nascimento && ano == ano_do_nascimento) { printf("mes do nascimento Fora de Faixa !\n"); } } else { if ((mes < 1 || mes>12) || (ano <= 1900 || ano > 2020)) { printf("Data actual invalida \n"); } else { if ((ano < ano_do_nascimento) || (dia < dia_do_nascimento && ano_do_nascimento == ano)) { printf("Data actual inferior a data de nascimento"); } else { if (carater == 'a') { calcula_idade = 365 * ano + 30 * mes + dia - 365 * ano_do_nascimento - 30 * mes_do_nascimento - dia_do_nascimento; ano1 = calcula_idade / 365; calcula_idade = calcula_idade % 365; mes1 = calcula_idade / 30; calcula_idade = calcula_idade % 30; dia1 = calcula_idade; printf("%d anos", ano1); } } } } } } } } } } } return 0; }  
  14. O post de devair1010 em Remover usuário da estrutura de dados foi marcado como solução   
    @joshuayuuki    esse modo como você está  fazendo o código ,  é confuso , e fica difícil fazer a remoção ,  e esses procedimentos para voltar ao menu , não precisa , pois ele volta automaticamente por causa do loop enquanto que está lá no procedimento inicializa,  e não precisa desses parenteses no final do procedimento que não recebe nenhum dado por parâmetro , e não é boa pratica , pois a cada chamada de uma função ou procedimento que não retorna para o local de onde foi chamado , o programa vai acumulando esses dados de retorno no ram top ou stack da máquina , e isso faz o pc ficar cada vez mais lento ,  e seu programa com muitas modificações poderia ser assim  :
    Algoritmo "remover usuario_3" Var usuario,op,nome,sair,c: caractere dados_do_usuario : vetor[1..4, 1..4] de caractere parecidos : vetor[0..100] de caractere // Matriz com 4 Linhas de 4 colunas cada // cada linha é um usuário // cada coluna é um dado desse usuário i, j, s,achou : inteiro linha,coluna,contador : inteiro procedimento excluir_usuario inicio escreval(" * EXCLUSAO *") escreval escreval(" * lista de nomes *") para i de 1 ate 4 faca escreval("Nome Usu ",i," ",dados_do_usuario[i,1]) fimpara escreval("---------------------") escreva("nome do usuario para remover : ") leia(nome) achou <- 0 para i de 1 ate contador faca se nome = dados_do_usuario[i,1] entao escreval("nome --: ",dados_do_usuario[i,1]) escreval("idade -: ",dados_do_usuario[i,2]) achou <- 1 escreval("tem certeza que Quer remover ",nome," S/N") leia( op ) se op <> "s" entao interrompa fimse para j de i ate contador - 1 faca dados_do_usuario[j,1] <- dados_do_usuario[j+1,1] dados_do_usuario[j,2] <- dados_do_usuario[j+1,2] fimpara contador <- contador - 1 // decrementa a qtd pois excluiu hum fimse se achou = 1 entao escreval("Usuário ",nome," Removido Com Sucesso !") interrompa fimse fimpara se achou = 0 entao escreval("Funcionario inexistente !") fimse fimprocedimento procedimento inicializa Inicio enquanto op <> "4" faca escreval("-----------------------------") escreval(" MENU ") escreval("-----------------------------") escreval(" ( 1 ) Cadastrar Usuário ") escreval(" ( 2 ) Buscar Usuário ") escreval(" ( 3 ) Listar Usuário ") escreval(" ( 4 ) Sair ") escreval(" ( 5 ) Remover Usuário ") escreva (" Opção: " ) leia( op ) limpatela se op = "1" entao cadastra_usuario fimse se op = "2" entao buscar_usuario fimse se op = "3" entao listar_usuario fimse se op = "4" entao escreval escreval ("Obrigado, volte sempre !") fimse se op = "5" entao excluir_usuario fimse //DeLay fimenquanto fimprocedimento procedimento cadastra_usuario inicio escreval("Informe os dados :") repita contador <- contador + 1 escreval("Usuário ",contador) escreva("Nome --: ") leia(dados_do_usuario[contador,1])// coluna 1 é o nome do Usuário c <- copia(dados_do_usuario[contador,1],0,4) escreval("1ª Letra do Nome ",c) escreva("Idade -: ") leia(dados_do_usuario[contador,2])// coluna 1 é a idade do Usuário // e ainda sobram duas a 3 e a 4 // não usadas escreval("---------------------") escreva("Cadastrar Outro S/N ") leia( sair ) se contador > 4 entao escreval("Esgotou o limite de cadastros !") sair <- "n" fimse ate sair = "n" fimprocedimento procedimento buscar_usuario var posi : inteiro inicio escreva("nome do usuario: ") leia(nome) achou <- 0 posi <- 0 para i de 1 ate 4 faca se nome = dados_do_usuario[i,1] entao escreval("Nome --: ",dados_do_usuario[i,1]) escreval("Idade -: ",dados_do_usuario[i,2]) senao se copia(nome,1,1) = copia(dados_do_usuario[i,1],1,1) entao posi <- posi + 1 parecidos[posi] <- dados_do_usuario[i,1] fimse fimse fimpara se achou = 0 entao escreval("Funcionario ( ",nome," ) inexistente !") se posi > 0 entao escreva("Mas Foi encontrAdo ",posi," Nome") se posi > 1 entao escreva("s") fimse escreva(" PareciDo") se posi > 1 entao escreva("s") fimse escreval(" :") para j de 1 ate posi faca escreval("Nome -> ",parecidos[j]) fimpara escreval fimse fimse fimprocedimento procedimento listar_usuario inicio para i de 1 ate contador faca escreval("Nome --: ",dados_do_usuario[i,1]) escreval("Idade -: ",dados_do_usuario[i,2]) escreval("---------------------") fimpara fimprocedimento procedimento delay inicio escreval escreval("Barra De Tempo Espere !") para i de 1 ate 30 faca para j de 1 ate 3000 faca s <- s + 1 fimpara escreva("#") fimpara escreval fimprocedimento inicio inicializa fimalgoritmo  
  15. O post de devair1010 em como ir ate certo ponto em python foi marcado como solução   
    @b.0463     no python por padrão não existe o comando  goto  ,  mas o usuário pode criar uma função que simule esse comando , e nesse link :
    https://stackoverflow.com/questions/18863309/the-equivalent-of-a-goto-in-python
    tem uma função desse tipo , e aqui , esse seu código poderia ser assim  :
     
    import time # biblioteca de tempo print('') # pular uma Linha para Baixo # ( O ponto ) while True: # substitui o goto t = 3 # para temporizar 3 Segundos a = int(input('Digite sua senha: '))# converte a entrada em decimaL e inteiro if a == 1234: # senha padrão print('asseso concedido') break; # sai desse Loop while else: # senha errada ? print('asseso negado') # ( temporiza 3 segundos ) print('Tempo Regressivo -> ', end="")# escreve sem pular para a Linha de Baixo while t > -1: # enquanto t maior ou iguaL a zero time.sleep(1) # Delays for 3 seconds. You can also use a float value. print(t,' ',end="") # informa o tempo restante da temporização t=t-1 # decrementa o tempo # (comando para voltar no ponto) # por padrão não tem comando para voltar no python # mas o usuário pode criar uma função que simule o comando goto # como explicado nesse Link : # https://stackoverflow.com/questions/18863309/the-equivalent-of-a-goto-in-python print('') print('aqui é o fim da picada !\n\n')  
  16. O post de devair1010 em Transformar chars minusculos em maiusculos? foi marcado como solução   
    @ArielBeaul    seu código corrigido :
     
    #include <stdio.h> #include <string.h>// precisa para usar strings e strlen q conta a qtd de caract #include <ctype.h> int main(void) { char list[4][10] = { "abacate","laranja","banana","uva" }; for (int j = 0; j < 4; j++) // é a qtd de linhas da matriz list { // ou o mesmo que a qtd de palavras da matriz for (int i = 0; i < strlen(list[j]); i++) // é a qtd de colunas da linha j da matriz // e o mesmo que a qtd de caracteres das palavras { //list[j][i] = toupper(list[j][i]); // se quiser armazenar na matriz as maiúculas printf("%c", toupper(list[j][i])); } printf("\n"); } return 0; }  
  17. O post de devair1010 em Questões de um iniciante em programação foi marcado como solução   
    @João VB Macedo    creio que a Lógica de programação , seja apenas uma base iniciaL para quem nunca estudou programação ,  e não tem necessidade de se prolongar nessa matéria ,  melhor mesmo começar a estudar alguma linguagem ,  
  18. O post de devair1010 em Visualg - Leitura de funcionários e geração de dados estatísticos foi marcado como solução   
    @joshuayuuki    no enunciado não tem nada sobre o Oficio do funcionário ,  e não precisa colocar dois loop para  , já que vai usar matriz , basta um Loop ,   pegue os dados dos funcionários e coloque na matriz , sendo o nome na primeira dimensão da matriz , e na 2  a idade , na 3 o sexo , e na 4 o sal. do funcionário , e depois faça os cálculos , pesquisando o que está na matriz , e como vai precisar somar , então precisa converter de caracteres para inteiro , e para isso use a função caracpnum ,   e seu código corrigido poderia ser assim :
    Algoritmo "Leitura de funcionários e geração de dados estatísticos" Var funcionario : vetor[0..4, 0..4] de caractere idade, sexo, salario : caractere menoridade,nome,dadosdofuncionario : caractere i, j, contf, contm, linha, coluna : inteiro totalsalario : real // para números com ponto decimal maioridade, nomemaior, nomenor : caractere Inicio //preenchimento escreval("Informe dados do funcionario na seguinte ordem: ") escreval("Nome") escreval("Idade") escreval("Sexo") escreval("Salario") escreval("-------------------") para i de 0 ate 1 faca escreval("Dados do funcionario ",i+1) escreva("Nome ") leia(funcionario[i,0])//nome do funcionario escreva("idade ") leia(funcionario[i,1])//idade do funcionario escreva("Sexo M / F ") leia(funcionario[i,2])//sexo do funcionario escreva("Valçor Salário ") leia(funcionario[i,3])//salaro do funcionario fimpara // aqui pesquisar na Matriz e fazer os cálculos para i de 0 ate 1 faca se funcionario[i,2] = "m" entao contm := contm + 1 fimse totalsalario := totalsalario + caracpnum(funcionario[i,3]) // aqui outros ( se ) iguais a esse para as outras opções fimpara // mostrar a matriz escreval("Leitura da matriz e apresentação dos dados") escreval("Nome, Idade, Sexo, Salario") para linha de 0 ate 1 faca escreva("-> ") para coluna de 0 ate 3 faca escreva(funcionario[linha, coluna]," | ") fimpara escrevaL fimpara escrevaL("O Total De Homens é : ", contm:3) // para escver em coluna escrevaL("O Salario TotaL é : ",totalsalario:3) fimalgoritmo  
  19. O post de devair1010 em Como salvar cada linha de um arquivo de texto em um espaço de um vetor? foi marcado como solução   
    @felipe honorio    ali você não abriu o arquivo para gravação nele ,  mas para pegar os dados de um arquivo txt , que já está gravado  e  colocar em um  vetor    "Lista"   , você pode usar o append mesmo , e seu código poderia ser assim :
    contatos = [] # vetor ou Lista arquivo = open("arquivo_1.txt","w") # cria e abre o arquivo para gravação for a in range(5): # coloquei cinco pois não sei o valor de quant_cont aux = input('contatos(Insira o contato e use ENTER para adicionar): ')# aux armazena o que foi digitado contatos.append(aux) # adiciona na Lista arquivo.write(aux) # grava no arquivo txt arquivo.write("\n") # pula para linha de baixo arquivo.close() # fecha o arquivo para vaLidar a Gravação arquivo = open("arquivo_1.txt","r") # abre o arquivo txt para leitura for linha in arquivo: # loop para ler tudo que tem no arquivo linha = linha.rstrip() # pega uma linha do arquivo print (linha) # escreve na teLa contatos.append(linha) # adiciona a linha na Lista arquivo.close() # fecha o arquivo print(contatos) # escreve tudo que tem na Lista  
  20. O post de devair1010 em Como contar os caracteres de um nome, e verificar se é maior que 3? foi marcado como solução   
    @Matheus Dutra    pelo enunciado , se o nome tiver 3 ou mais caracteres será considerado válido , e a função no portugoL Studio , que faz a contagem dos caracteres de uma palavra do tipo cadeia , é a função 
    inclua biblioteca Text --> t inteiro n cadeia nome = "qualquer" n = t.numero_caracteres(nome) escreva("A Qtd de caracteres Da palavra ",nome," eh ",n ) então seu código corrigido poderia ser assim  :
    programa { inclua biblioteca Texto --> t funcao inicio() { cadeia nome = "" inteiro idade = 0 inteiro salario = 0 inteiro n= 0 escreva("Qual sua idade ?") leia(idade) escreva("Qual seu Nome ?") leia(nome) n = t.numero_caracteres(nome) escreva("VaL n= ",n,"\n\n") se( t.numero_caracteres(nome) > 2 ) { escreva("Nome VaLido !\n") } senao { escreva("Nome InvaLido ! \n") } se(idade <= 150 e idade >= 0) { escreva("Idade válida", "\n\n") } senao { escreva("\n", "Idade inválida", "\n") } escreva("\n", "Qual o seu salario?") leia(salario) se(salario > 0 ) { escreva("\n\n", "Sálario válido") } senao { escreva("\n\n", "Sálario inválido") } } }  
  21. O post de devair1010 em exercicio em c - escala foi marcado como solução   
    @Laryssa Silva   alguns erro de digitação 
    #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <math.h> float FL, KL; // não é bom usar variáveis Globais // a temperatura terá ponto decimal , ~por isso float float CONVKF(int K, int F)// aqui faltou o tipo da segunda variável // por receber que dois valores ? basta HUM ! // e void não retorna nada { int ret = 0; // { 273K - 32F, 373K - 212F}// para que serve esse bloco ? if (K < 0) { //CONVKF = 0;// esse símbolo <- é do VisuaLG 3.0 //CONVKF é o nome de uma função e nela não se pode armazenar nenhum vaLor ret = 0; } else { //CONVKF < -1; ret = 1; F < -(5 * 212 - 9 * (373 - K)) / 5; } return ret; } int main() { scanf("%d", &KL); printf("\n"); if (CONVKF(KL, FL) == 0) {// o simboLo de Comparação na Linguagem c é dois sinais de igualdade == // e por que enviar dois números ? pegou só hum ! printf("Impossivel calcular, temperatura Kelvin negativa!"); } else { printf("A correspondente temperatura na escala Fahrenheit eh %.2f\n", FL);// assim FL será zero como foi decidido na criação // dessa variáveL , lá no início antes da main } printf("\n\n\n"); return 0; }  
  22. O post de devair1010 em EXERCICIO EM C - 2º e o 4º maior valores foi marcado como solução   
    @Laryssa Silva     Quando estamos começando é fáciL esquecer de adicionar os operadores certos nas funções , e ali você esqueceu de colocar aquele & comerciaL , que vem de endereço , antes da variáveL no scanf , 
    while( i < 5 ) { printf("Numero[%d]",i+1); scanf("%d",&vet[i]); i++; } só não precisa colocar esse & nas variáveis do tipo string , pois elas já tem o endereço .
  23. O post de devair1010 em Preciso criar algo para controle de estoque foi marcado como solução   
    @G7 log    um aplicativo para controle de estoque , não é uma coisa muito difícil de se fazer , mas também não é assim tão fácil , principalmente para quem não tem experiência ou tem pouco conhecimento , e mesmo que consiga fazer um que funcione , será pouco provável que atenda as necessidades de uma empresa , que precisa de algo que se possa confiar ,  e o primeiro aplicativo que alguém faça ,  com certeza terá muitos bug's e erros e terá que ficar consertando alguma coisa aqui e outra ali , e isso será um árdua tarefa ,  mas a título de aprendizado é válido , e depois de muito estudar programação e quando tiver muito conhecimento , aí faça seu aplicativo , enquanto isso ele pode usar um aplicativo que já existe no mercado e que já foi testado muito e aprovado ,  que faz parte dos aplicativos comerciais ,    mas se você quiser tentar assim mesmo , então poste os códigos que você já tenha feito sobre esse aplicativo e ajudaremos .
  24. O post de devair1010 em Preciso de ajuda com um código em C++, dúvida sobre comandos foi marcado como solução   
    @mAYBEE     Qual o seu nível   de conhecimento sobre essa Linguagem c++ de programação  ?   ,  pois a Linguagem C++ é bem diferente da Linguagem c , pois ela é mais moderna e avançada e por isso contém muitos outros comandos  que para usufruir de tais comandos vai precisar de um compilador também moderno tipo o visual studio da Microsoft ,  pois esses compiladores mais populares como o
    codeblock e Dev c++, Falcon , e outros desse tipo , e outros desse tipo não tem atualizações muito recentes , para isso ,  usando o C++11 ou superior ,  e isso facilita e ajuda na programação ,   mas se você fizer o código usando os comandos da Linguagem c mesmo ,  o c++ vai aceitar esses comando e funcionar normalmente como se fosse em c mesmo , apenas que você terá mais trabalho ,                          e a propósito do seu código ,    você pode dizer alguma coisa sobre o que você quer fazer  ?  ,    esse começo que você inseriu está correto , usou a biblioteca do C++ , mesmo , que é a
    #include <iostream> para entradas e saídas de dados , e o
    using namespace std;   que é muito útil , pois assim você não vai precisar ficar digitando aquela palavra  std  , a todo momento ,  . . . . ! , , , * = x   , . . 
  25. O post de devair1010 em Preciso de ajuda com um código em C++, dúvida sobre comandos foi marcado como solução   
    @mAYBEE     Qual o seu nível   de conhecimento sobre essa Linguagem c++ de programação  ?   ,  pois a Linguagem C++ é bem diferente da Linguagem c , pois ela é mais moderna e avançada e por isso contém muitos outros comandos  que para usufruir de tais comandos vai precisar de um compilador também moderno tipo o visual studio da Microsoft ,  pois esses compiladores mais populares como o
    codeblock e Dev c++, Falcon , e outros desse tipo , e outros desse tipo não tem atualizações muito recentes , para isso ,  usando o C++11 ou superior ,  e isso facilita e ajuda na programação ,   mas se você fizer o código usando os comandos da Linguagem c mesmo ,  o c++ vai aceitar esses comando e funcionar normalmente como se fosse em c mesmo , apenas que você terá mais trabalho ,                          e a propósito do seu código ,    você pode dizer alguma coisa sobre o que você quer fazer  ?  ,    esse começo que você inseriu está correto , usou a biblioteca do C++ , mesmo , que é a
    #include <iostream> para entradas e saídas de dados , e o
    using namespace std;   que é muito útil , pois assim você não vai precisar ficar digitando aquela palavra  std  , a todo momento ,  . . . . ! , , , * = x   , . . 

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

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!