Ir ao conteúdo
  • Cadastre-se

guivaldevieso

Membros Plenos
  • Total de itens

    65
  • Registro em

  • Última visita

  • Qualificações

    0%

Reputação

6

Sobre guivaldevieso

  • Data de Nascimento 14-11-1994 (24 anos)

Informações gerais

  • Cidade e Estado
    Luis Eduardo Magalhães, BA
  1. guivaldevieso

    Dúvida

    Amigo, na verdade a função getchar() recebe um caractere qualquer como entrada, qualquer tecla pressionada vai ser recebida pela função, só que não terá retorno algum, logo, ela dará continuidade ao programa como se nada houvesse acontecido. Já o system("pause"); é uma função de uso de console, é como se você escrevesse pause no prompt de comando, no linux por exemplo, essa linha de código é inválida. Espero ter ajudado, grande abraço.
  2. Amigo, na verdade a secunda variável está definida erroneamente. Como já é bem sugestivo nós sabemos que a palavra reservada char, refere-se a character, ou seja, caractere em português. Agora imagine o seguinte, se uma letra qualquer equivale a um caracter, ou então, um char, como vamos criar uma sequência de letras que define uma palavra? Quando declaramos char letra; Estamos dizendo ao compilador que vamos inserir um caractere qualquer na memória, poderíamos definir assim, de bate pronto. char letra = 'A'; Lembre-se que quando definimos apenas um caractere usamos aspas simples em C. Mas aí vem o caso de uma string, como declarar uma string em C. Simples. Imagine agora uma sequencia de variaveis char que juntas formam uma palavra, imaginou? certo, vamos declarar então uma variavel que guarde meu nome por exemplo: char nome[9] = "Guilherme"; Desta forma, eu estou dizendo ao compilador que quero reservar 9 caracteres para alocar em cada um uma letra, no caso 9 letras. Se eu acessar a variável nome em determinada posição, veja o retorno: printf("%c",nome[0]); RETORNO: G printf("%c",nome[1]); RETORNO: u printf("%c",nome[2]); RETORNO: i Espero que tenha entendido, grande abraço. EDIÇÃO: Desculpe amigo, não havia lido direito. O problema está na sua declaração, quando você definiu a última variável ele entendeu que irá guardar apenas um caractere, logo quando você escreveu 'teste' ele leu apenas o último caractere pois foi o mais recente declarado, porém, isso é erro de desenvolvimento.
  3. Olá amigo, peço que seja mais específico pois está difícil de compreender. Poste o pedaço do seu código responsável por salvar o arquivo.
  4. para analisar a quantidade que um número se repete dentro de um intervalo faremos assim: Criaremos 4 variáveis: Olá amigo, int repeticoes = 0; int aux = 0; int numMaiorRepeticao = 0; int numeros[10]; A partir dessas variáveis criadas podemos ter o controle de qual o maior número e quantas vezes ele se repete, veja o código: #include <stdio.h> int main(){ int repeticoes = 0; int aux = 0; int numMaiorRepeticao = 0; int numeros[10]; register int i =0, z = 0; for(i=0;i<10;i++){ //Recebe os números printf("Numero %d:",i); scanf("%d",&numeros[i]); } for(z=0;z<10;z++) //Faremos cada número ser comparado com todos os outros { for(i=0;i<10;i++){ //i nos dará o número que está sendo comparado if(numeros[z] == numeros[i]) //O número que se compara com o atual é igual aux+=1; //Incrementa-se a variável auxiliar } if(aux > repeticoes){ //Este número, se repetiu mais vezes que o último analisado? repeticoes = aux; //Repetições tem um novo valor numMaiorRepeticao = numeros[z]; //Definimos o novo número que mais se repetiu } aux = 0; } printf("O numero que mais repete no conjunto é o %d, num total de %d vezes\n",numMaiorRepeticao,repeticoes); } Espero ter ajudado, grande abraço.
  5. Olá amigo, o que esse trecho faz é o seguinte, imagine um número, como no seu caso: 7314 Quando o loop inicia ele recebe o último algarismo do número que acabou de receber, ou seja, 4. Por que? 7314 % 10 = 4, O resto de um número dividido por 10 é sempre o último algarismo. Logo após isso, a variável soma, que retornará o digito verificador é acrescida do número 4. E agora vem a parte mais interessante, dividimos o aux por 10, ou seja, o número que antes era 7314, agora passa a ser 731,4, porém, como desconsideramos os valores decimais quando o loop pedir novamente o resto de 731,4 dividido por 10 o que nos será retornado é o número 1 e, logo após, esse número 1 é acrescido a variável soma, e assim por diante, veja os passos: 7314 % 10 = 4 soma += 4; soma = 4 7314/10 = 731.4 731.4 % 10 = 1 soma+= 1; soma = 5 731.4 / 10 = 73.14 73.14 % 10 = 3 soma+=3; soma = 8 73.14 / 10 = 7.314 7.314 % 10 = 7 soma+= 7; soma = 15 Digito = 15 15 % 10 = 5 Espero que tenha entendido, grande abraço.
  6. Agora quem não compreendeu fui eu. auiehaeiuhae, como assim mostrar na tela a posição de memória? Pelo que eu saiba, as posições de memórias são alocadas dinamicamente pelo kernel do sistema operacional, mostrar a posição de memória 128, ou 129 seria retornar um valor qualquer em uso ou não no sistema. Tem certeza que tem a ver com posição de memória? Você não está falando de vetores não?
  7. Olá amigo, isso que você está pedindo envolve um pouco de manipulação de memória. Fiz um exemplo simples em C de como funciona a leitura de arquivos e, o armazenamento dos dados contidos. Para fazer isso, precisaremos criar um ponteiro com duas ramificações. Tente entender o código e qualquer dúvida é só postar. #include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ FILE *arq; char string[100]; int quantLinhas = 0; char **linhas; arq = fopen("texto.txt","r"); linhas = (char**) malloc(sizeof(char*)); if(arq){ while(fgets(string,sizeof(string),arq)){ quantLinhas++; linhas = (char**) realloc(linhas,sizeof(linhas) * quantLinhas); linhas[quantLinhas-1] = (char*) malloc(sizeof(char) * 100); strcpy(linhas[quantLinhas-1],string); printf("%s\n",linhas[quantLinhas-1]); } } close(arq); free(*linhas); free(linhas); return 0; } Grande abraço, espero ter ajudado.
  8. Está cansado de cadastrar clientes, calcular a média dos alunos, calcular o fatorial de um número..?? aueihaiuhaeea, sei bem como é amigo. Uma ideia legal, agora que você domina a linguagem, é investir nas libs tais como Allegro, SDL, Glut. Que tal fazer um game? Comece com algo como um Pong e vá evoluindo, é um bom método para se praticar programação em C e conhecer o poder da linguagem.
  9. Olá amigo, os arquivos de cabeçalho servem para orientação do compilador, como o próprio nome já diz, eles vão servir como um índice de pré processamento do compilador, funções, variáveis, tudo será posto em um arquivo de cabeçalho. Estas medidas servem também para evitar declarações duplas o que acarreta erro no compilador. Como padrão, criamos um arquivo .c ou .cpp para armazenar as funções em si, incluindo as bibliotecas necessárias nele. Agora imagine que você tenha um arquivo "arqn.c" e dentro dele você declara a biblioteca stdio.h e, logo após, no seu arquivo main.c, (que também possui a mesma biblioteca) , você inclui: #include <stdio.h> #include "arqn.c" Para o compilador suas inclusões seriam as seguintes: #include <stdio.h> [COLOR="Red"]#include <stdio.h>[/COLOR] Deu para entender meio por cima? auiehiuaeh, espero ter ajudado, desculpe qualquer falha.
  10. Amigo, não entendo muito de C++ mas creio que o erro esteja na comparação entre as duas strings, tente ler esta documentação, ficará mais claro. Comparação entre duas strings Grande abraço, espero te ajudado.
  11. Substitua o getch(); pelo próprio caractere caso não queira alterar a estrutura do código, exemplo: char teste; teste = 'A';
  12. Sim, claro, a função getch() recebe uma entrada de dados, logo, haverá uma pausa na execução.
  13. Acho que seu professor se expressou mal ao elaborar essa questão, ou seja lá quem for o elaborador. Mas acho que seria válida uma terceira opinião também. Aguardo suas respostas, fiquei curioso agora.
  14. Amigo, poste o main do jeito que está. Não estou entendendo o que quer dizer. Qualquer função que não esteja entre condições é executada pelo programa.
  15. Mas o que eu digo é o seguinte, no programa, iremos receber os dois valores(x e y) ou apenas um dos dois para aí sim achar o valor de x*y. Pois, desta forma seria viável usar a propriedade, entende?

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×