Gabriel Pancaldi
-
Posts
15 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por Gabriel Pancaldi
-
-
#include <stdio.h> #include <stdlib.h> #include <time.h> #include <string.h> #include <math.h> #define T 10 void bin_oct(char [], char []); int main(){ char b[50], o[50]; printf("Informe um numero binario:"); gets(b); bin_oct(b, o); return 0; } void bin_oct(char *bin, char *oct){ int i, j; for(i = 0; i < strlen(oct); i++){ for(j = 0; j < strlen(bin); j = j + 3){ if(bin[j] == '0' && bin[j + 1] == '0' && bin[j + 2] == '0'){ oct[i] = '0'; } else if(bin[j] == '0' && bin[j + 1] == '0' && bin[j + 2] == '1'){ oct[i] = '1'; } else if(bin[j] == '0' && bin[j + 1] == '1' && bin[j + 2] == '0'){ oct[i] = '2'; } else if(bin[j] == '0' && bin[j + 1] == '1' && bin[j + 2] == '1'){ oct[i] = '3'; } else if(bin[j] == '1' && bin[j + 1] == '0' && bin[j + 2] == '0'){ oct[i] = '4'; } else if(bin[j] == '1' && bin[j + 1] == '0' && bin[j + 2] == '1'){ oct[i] = '5'; } else if(bin[j] == '1' && bin[j + 1] == '1' && bin[j + 2] == '0'){ oct[i] = '6'; } else if(bin[j] == '1' && bin[j + 1] == '1' && bin[j + 2] == '1'){ oct[i] = '7'; } } } printf("%s", oct); }
Estou observando que só o ultimo valor é mostrado no printf, o certo seria quando achasse o valor que batesse o for fosse alterado assim, buscando uma novo grupo de 3 e um valor i diferente da string mas n sei como faz isso. Alguma ideia do que fazer?
- 1
-
Valeu, mano.
Agora posso fazer as outras conversões, estava com duvida só nessa conversao de valores.
- 2
-
Spoiler
#include <stdio.h> #include <stdlib.h> #include <time.h> #include <string.h> #include <math.h> #define T 10 int oct_dec(char []); int main(){ int nc; char str[50]; printf("Informe o numero octal:"); gets(str); nc = oct_dec(str); return 0; } int oct_dec(char *oct){ int i, cv, soma, cont = 0; soma = 0; for(i = strlen(oct) - 1;i >= 0; i--){ cv = oct[i] * pow(8, cont); cont++; soma = soma + cv; } printf("%d", soma); return(soma); }
Estou com duvida para converter o numero dentro do vetor char para ele mesmo em int, por que quando faço a conta direto ele é convertido para o numero na versao da tabela ascii.
- 1
-
-
-
@devair1010 Valeu mano, vou corrigir o meu aqui.
- 1
-
Estou fazendo um exercício no qual preciso dar a sequencia Fibonacci, eu já entendi a sequencia da mesma, mas eu não consigo pegar o numero anterior resultado para fazer a soma.
var n: inteiro //n1 cont: inteiro //contador s: inteiro //n2 f: inteiro //sequencia inicio // Seção de Comandos cont <- 0 f <- 0 s <- 1 REPITA f <- f + s s <-f escreva(f) cont <- cont+1 ATE cont>5 fimalgoritmo
Se alguém souber como posso fazer agradeço desde já.
- 1
-
@Simon Viegas Vou tentar corrigir meu código até amanhã e posto aqui, não prometo nada.
-
Eu entendi agora, vou postar o código corrigido abaixo, está funcionando certinho.
var a, b, c: inteiro inicio // Seção de Comandos Escreva("Informe 3 numeros:") leia(a,b,c) SE (a>b) e (b>c) então ESCREVA("ORDEM: ", c, b, a) FIMSE SE (a>b) e (b<c) então ESCREVA("ORDEM: ", b, c, a) FIMSE SE (b>a) e (a>c) então ESCREVA("ORDEM: ", c, a, b) FIMSE SE (b>a) e (a<c) então ESCREVA("ORDEM: ", a, c, b) FIMSE SE (c>a) e (a>b) então ESCREVA("ORDEM: ", b, a, c) FIMSE SE (c>a) e (a<b) então ESCREVA("ORDEM: "), a, b, c) FIMSE fimalgoritmo
- 1
-
1 hora atrás, Simon Viegas disse:
Olá @Gabriel Pancaldi.
Pronto!
Agora fica faltando implementar o se/então/senão... pois são condições mutuamente excludentes, ou seja, se for uma, não pode mais ser alguma depois, e esse tipo de condições pede o senão.
Por favor, caso queira implementar, por favor, poste seu código completo aqui ou onde está com dúvidas.
No aguardo.
No momento acho que vou continuar assim, pois acho que com o senão eu iria ficar confuso no código e no jeito que está funcionou, mas obrigado pela ajuda.
- 1
-
6 horas atrás, Simon Viegas disse:
@Gabriel Pancaldi, aquele seu primeiro código é o completo, ou só parte?
Para adiantar:
- cada expressão do se é separada por colchetes "()", ex.:
se (a>b) e (b>c) ENTÃO
- é necessário declarar o nome do programa e as variáveis que você está utilizando, ex.:
algoritmo "Nome do meu algoritmo" //nome do algoritmo var a,b,c :inteiro //é necessário declarar as variáveis que serão usadas inicio fimalgoritmo
O seu código fica entre o "inicio" e "fimalgoritmo".
***
Tente fazer as correções e poste seu código completo e onde está com dúvidas.
No aguardo.
adicionado 7 minutos depoisConsegui fazer, era só separar meso por () cada condição e agora é só colocar na ordem crescente
- 1
-
O problema é que eu fiz alguns códigos iguais a este e nao deu problema, vou tentar separar as variaveis
adicionado 6 minutos depoisSeparei variaveis e nada, acho que é o visualg mesmo, porque tem um então na cara dele e ele da a falta do mesmo
- 1
-
Bom dia, estou começando na linguagem de Portugol e meu Visualg está dando um erro um tanto quanto estranho.
Escreva("Informe 3 numeros:") leia(a,b,c) SE (a>b e b>c) então ESCREVA("ORDEM: ", a, b, c) FIMSE SE (a>b e b<c) então ESCREVA("ORDEM: ", a, c, b ) FIMSE SE (b>a e a>c) então ESCREVA("ORDEM: ", b, a, c) FIMSE SE (b>a e a<c) então ESCREVA("ORDEM: ", b, c, a) FIMSE SE (c>a e a>b) então ESCREVA("ORDEM: ", c, a, b ) FIMSE SE (c>a e a<b) então ESCREVA("ORDEM: "), c, b, a) FIMSE
Quando eu executo o Visualg afirma que esta faltando um então na primeira linha, mas não está, queria saber o porque.
- 1
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
Conversao binario-octal como fazer?
em C/C#/C++
Postado
Como corrijo isso, gostaria que quando o binario correto fosse achado o j continuasse de onde parou e o i fosse incrementado.