-
Posts
3.284 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Livros
Cursos
Análises
Fórum
Tudo que Ansi C postou
-
Olá @Anna007 ! int aloca(int vetor[],int tam) { int *p; int aux=0; p=(int *)malloc(tam*sizeof(int)); for(int i=0; i<tam; i++) { p[i]=aux; aux++; } return &p; } Começando pelo protótipo quero dizer que o parâmetro vetor[] é inútil para função, se considerarmos o corpo da mesma. Pelo enunciado do problema rotina é retorna o ponteiro para vetor alocado, no caso vejo erro mais um vez no cabeçario da função, pois o tipo a retorna é int*. Corrija digitando int * aloca(int tam). Consequentemente return p; apagando & eitza. Observação quando lidemos com ponteiros e de bom gosto usar a escrita de equivalente tratamento de ponteiros, ou seja, mesmo sendo equivalente *(p+x) e p[x] use sempre com operador de ponteiros, o segundo formato, quando se tratar de ponteiros. Daí a função alternativa fica assim: int* aloca(int tam) { int* p; int aux= 0; p= (int*)malloc(tam * sizeof(int)); for(int i= 0;i < tam; i++){ *(p + i)= aux++; } return p; } Good Code!
-
C++ Simulador de máquina de vendas automática
Ansi C respondeu ao tópico de Ruben Timoteo em C/C#/C++
Para ser sincero a solução para seu problema é muito simples para nós que já codificamos a muito tempo, entretanto a fórum tem alguns restrições que me impedem de ajudar com eficiência, chega a dar angústia porque me sinto em macha lenta tentando fazer você entender quando na verdade é mais fácil s objetivo demostrar com apenas uma postagem tudo já seria resolvido, contudo esse parece ser o problema aqui. Só lhe desejo melhor sorte. Desculpe por não ajuda-lo devidamente. -
C++ Simulador de máquina de vendas automática
Ansi C respondeu ao tópico de Ruben Timoteo em C/C#/C++
Depurei a primeira parte do teu código @Ruben Timoteo A função ModoMan contém loop infinito para senha errada. while(strcmp(rl,resp) != 0)//< #ERRO: Se diferente da senha interna, Loop Infinito. puts("Resposta errada. Tente de novo.");//< Output impresso sem limite. Sei que essa não é a questão, porém veja aí -
C++ Simulador de máquina de vendas automática
Ansi C respondeu ao tópico de Ruben Timoteo em C/C#/C++
Neste caso pode ser pelo: ÍNDICE por meio de um menu e apresentado as opções de moedas, quando optado corretamento do menu solicita após a quantidade a ser adicionada / somada. Exemplo Manutenção - Inserir Moedas Opções: 0.05[1],0.10[2],0.20[3],0.50[4],1[5],2[6] Uma variável captura a opção e refaz como índice no vetor stock. Logo depois solicite uma segunda entrada para quantidade de moedas -
C++ Simulador de máquina de vendas automática
Ansi C respondeu ao tópico de Ruben Timoteo em C/C#/C++
Olá @Ruben Timoteo nesta parte vemos é dúvida ou você não sabe fazer? Porque se é dúvida ao menos esboçou solução. Observo que não examinei teu algoritmo. Ideia é começa criando um pseudo banco de dados por assim dizer, usando pra isso vetores. Algo assim: /** Observe que em ambos os casos o índice é o mesmo na quantidade de moedas * e no detalhe / valores. */ //! Banco de Dados | data base unsigned //< Nos diz: sem-sinal para tipos INT somente positivos. int db_qnt_moedas[6]= {0}; //< contém o número de moedas na máquina. float db_lab_moedas[ ]= //< contém o valor das moedas na máquina. {0.05,0.10,0.20,0.50,1,2}; No momento pensei ser melhor inverter o índice de maneira que o índice 0 represente o maior valor monetário, no caso 2, logo 5 seria o índice de 0.05. Porque assim suponho ser mais produtivo para o algoritmo que seguirá manipulando esse e outro vetores. -
C++ Programa + subprograma - nº aparelhos vendidos
Ansi C respondeu ao tópico de mariana_____silva em C/C#/C++
@mariana_____silva Olá! De cara observei esse erro já mencionado. É um dos mais chatos dos mais cometidos. -
C Divisão através de subtração sucessiva
Ansi C respondeu ao tópico de Gabriel Moreira Fonseca Sa em C/C#/C++
Meu desejo foi de ajudar fazendo o pedido do colega do fórum de programação. Que tem seus próprios valores bem fundamentados, isso ficou claro na citação, sem a necessidade de achismo ou de minha opinião para resposta. Tendo ele fechado essa discussão. Exageramos e deixamos de ser objetivos até nas coisa mais simples. Isso porque pensamos acreditamos saber o que o bom para outro e atuamos dessa forma sem pensar. Algo que não vejo nos outros grupos (ingleses). Nossas intenções são sempre as melhores, contudo devemos deixar o obvio de lado e acreditar que as pessoas são capazes de por si só verem a proposta das coisa e ajuda-las naquilo que elas pedem ajuda. -
C Divisão através de subtração sucessiva
Ansi C respondeu ao tópico de Gabriel Moreira Fonseca Sa em C/C#/C++
Vai ser algo assim: //Calcula o quociente de x por y, onde usa somente subtracoes em loop //Programa divPorLoop.c //Data fev 14 de 2018 //Mauro Brito #include <stdio.h>//< inclui scanf, printf //Resolve o quociente de x por y //parametro x- dividendo inteiro //parametro y- divisor inteiro != 0 //retorna z- conciente de x por y int divLoop(int x, int y);//< Prototipo da tarefa principal //Funcao principal do programa //Nao tem parametros //retorna inteiro 0- sucesso diferente para outros resultados int main(void) { int x, y, z; x= 30;//< Dividendo y= 2;//< Divisor z= divLoop(x, y);//<quociente printf("%d div %d eh %d\n", x,y,z); return 0; } //Divide x por y e retorna z- quociente int divLoop(int x, int y) { int z; //< quociente de x por y if(!y || x < y)return 0;//< se y tem 0 ou e maior que y, então finaliza retornando 0 (x < 0 && (x= -x) || y < 0 && (y= -y)); //< se y ou x menor 0 então inverte o sinal z= 1; while((x-= y), y <= x)z++;//< repete o loop ate que x nao seja divisivel return z; } -
C++ Como faço um ciclo ou função que me diz o numero de valores de um array
Ansi C respondeu ao tópico de QuackSoldierIV em C/C#/C++
Outra estratégia é usar a mesma artimanha que vemos nas strings. Na string em C o caractere '\0' marca seu fim. Neste caso se um vetor que imaginamos é o vetor que admite apenas valores positivos, grave no último espaço do vetor um valor negativo. Usando condicionais conte a quantidade de elementos até que um dado arbitrário seja localizado e finalize o contador. Não existe em vetores de tipos primitivos estratégia melhor para lidar com limites. -
Não há o que se desculpar. Entenda a intenção ainda é aconselhar que siga resolvendo os exercício muito longos em partes menores. "Dividir e Conquistar" você já deve ter ouvido isso. GC!
-
Ola @Mpixell ! Você postou o código inteiro e isso é muito ruim porque a questão diz respeito uma das tarefas do programa e não a todas elas. Então tente fazer outro programa que busca uma palavra em um vetor tão somente isso, depois poste aqui usando o tag <> ou melhor hospede o arquivo no Drop Box. As vezes e melhor fazer tarefas e programas separados para depois juntar tudo em um só. Com isso você aprende mais.
-
C o que esta errado com esse programa?(ponteiros)
Ansi C respondeu ao tópico de Amanda Kellen em C/C#/C++
Ficou claro o objetivo de amada. Porém não é necessário pensar nisso porque o enunciado do problema garante que o "usuário" não vai errar (nem com número não positivos e nem para outros caracteres não numéricos). PS.: A boa interpretação do problema é fundamental. Não vai-se além e nem aquém do essencial da questão, foi o que aprendi no URI entre outras coisas. -
C o que esta errado com esse programa?(ponteiros)
Ansi C respondeu ao tópico de Amanda Kellen em C/C#/C++
Eu acho que em caso de teste esse trecho de código não será executado. Porque o enunciado do problema diz y-ésima, chamo destaque para letra a no final da palavra y-ésima que vem de enésima que de forma leiga quer dizer; Último elemento de ordem, ou seja, não existe número ordinal negativo. y := 1,2,3,4... e nunca < 1. PS.: Na física disso em tenho certeza! Um salva para UFPE Universidade do Meu . -
C CRUD Manipulador de Arquivos para Vender para Advogados
Ansi C respondeu ao tópico de Eduardo de Quadros em C/C#/C++
Pelo título o que procuras é um parceiro de projeto comercial. Coloca um foto de uma gostosona que daí terás de graça o código prontinho. -
C o que esta errado com esse programa?(ponteiros)
Ansi C respondeu ao tópico de Amanda Kellen em C/C#/C++
@Amanda Kellen Olá! Seu Editor não deveria ter compilador esse programa. Erros na linha:12, 26 e 28 deCompilação, mais um erro lógico na linha 35. Quando queremos gravar ou ler o conteúdo de um ponteiro qualquer colocamos o astéricos antes do nome do dito cujo. Assim *RefQualquer= 13 Com relação aos demais erros, vou deixar por sua conta principalmente o 35 e o 12. -
Tadinho está aqui já porque não consegui, e não seria sádico de ficar só dando pistas.
-
Segunda parte não diz que teve ser a inversa da primeira, mais sim uma que decifre, então tá valendo qualquer solução. Ainda sim no caso de ser realmente a inversa. Teria de ser a inversa da composta. Pois f e composta de g | g: x + 8 e f: (g-10*(g/10)); para x= 1 tem f:((1+8)-10*((1+8)/10))= 9 em '/' é divisor de resultado inteiro. Pensar na inversa desta expressão já não é mais puramente C é matemática+C o que é absolutamente maravilhoso.
-
Vendo mais uma vez, o que me ocorre é tirar o mod10 mais uma vez. Para decifrar: (2+10)-8= 4%10= 4 (3+10)-8= 5%10= 5 (4+10)-8= 6%10= 6 (5+10)-8= 7%10= 7 De fato não sei a maneira de inverter a primeira função. Porém no caso do dígito 1, refaz %10. Ainda sim é uma medida para assegurar o bug que faz o dígito 1 e 0. (1+8)%10= 9 ((9+10)-8)%10= 1 (0+8)%10= 8 ((8+10)-8)%10= 0 Vocês@Simon Viegas @Leoveira concordam?
-
Não consigo pensar mais em nada.
-
Vejo conflito de interpretação da tarefa. Estamos com ideias diferentes do problema. Olha eu pensei assim: Sequência de inteiros decimais de 4 dígitos(DigDigDigDig), por exemplo: 4567 essa sequência tem 4 dígitos 4-5-6-7; segundo o enunciado que diz (Dig+8)%10 para cada dígito faz-se isto: (4+8)%10= 2 (5+8)%10= 3 (6+8)%10= 4 (7+8)%10= 5 Para re-cifrar a questão: (2+10)-8= 4 (3+10)-8= 5 (4+10)-8= 6 (5+10)-8= 7 Concorda?
-
Um vez que o e-mail seja o correto, segundo a estrutura do arquivo, o próximo string será a senha do respectivo e-mail. Fatalmente. Por nada!
-
Essa string seria a senha do e-mail. Observou que quando a busca resulta em SUCESSO. A senha é imediatamente a próximo input segundo a estrutura do arquivo, portanto, basta repetir o fscanf-string só para pegar a senha. E Pronto!
-
Olá @Florian Martins Observei que a lógica está funcionado. Fiz alguns modificações para encaixar no main. busca_email.c #include <stdio.h> //printf, scanf, fscanf, "strcmp", #include <stdlib.h> //exit, system. int main() { FILE *f; char email[]={"[email protected]"},//Exemplo de formato de tamanho:= 27. emailteste[sizeof email], existe, z; printf("Para recuperar a sua password segue os seguintes passos:\n 1-Insira seu email: "); scanf("%27s", email);//27 e tamanho máximo do nosso exemplo. existe=0;//Var_char que contém a resposta da comparação e-mail a e-mail. f=fopen("mail-e-pass.txt", "r");//Var_ f contém ponto para file aberto ou NULL if(f==NULL) { printf("Erro ao abrir ficheiro \n"); exit(1); } //!<CONCLUSÃO> //*Pelo formato do input no file: podemos concluir que a cada e-mail vem logo após //*sua respectiva senha de maneira que; se o e-mail buscado não for o input certo //*então se deve pular o próximo input pois esse é a senha do e-mail anterior errado. while(fscanf(f, "%s",emailteste)!=EOF) {//Busca até o Fim do Arquivo ou finaliza antes. z=strcmp(emailteste, email);//Comparando se somente 0- são iguais. if(z==0) { printf("seu email existe\n"); existe=1; } else fscanf(f, "%*s");//Caso o email não exista então pular senha fail. } if(existe==0) { printf("Este email nao existe.\n"); } //!<CONCLUSÃO\> fclose(f); system("PAUSE"); //Cria uma parada no prompt Microsoft Windows. return 0; }
-
Divida essa lista de questões que compões o problemas em etapas. Primeiro pensando como cifrar apenas uma entrada, esquece o loop por enquanto. Essa é um boa forma de começar e resolver. Tentas aí.
-
Olá@Leoveira int main(){ int n,i,num[4]; cout << "Digite um numero: "; cin >>n; i=0; while(n>0){ num= n%10; n=n/10; i=i+1; } cout << num[1]<<num[0]<<num[3]<<num[2]; } Para melhor visualização coloquei na box-code. Não testei, porém só de olhar consigo dizer que tem alguns erros lógicos aqui. Contudo consigo ver a intenção da tarefa principalmente no loop-while. Ainda sim, vejo que i=0; que não serve a nada e o seu incremento que também não serve de nada foram postos aí à toa. Você percebeu isso? Não. Comece por ai dizendo a sua intenção com esse i.
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