Programação em c.

61. Re: Programação em c.

Jeferson
Deis

(usa Ubuntu)

Enviado em 01/10/2012 - 14:47h



Obrigado por sua ajuda.

Como eu sou iniciante em programação em C, eu não entendi totalamente as explicações. Mas entendi que a biblioteca conio.h não serve para linux e pode ser substituidade pela biblioteca curses.h

Ontem a noite eu fiquei fuçando e consegui rodar no linux, no programa Geany, um programa feito no cod block, no windows 7 na escola.

Mesmo dando mensagem de erro o pograma rodou:


As mensagens de erros são essas:

gcc -Wall -c "Media de 4 Notas.c" (no diretório: /home/maranata/Programação em C Linux/Meida de 4 Notas)
Media de 4 Notas.c: Na função ‘main’:
Media de 4 Notas.c:9:5: aviso: formato ‘%s’ expects argument of type ‘char *’, but argument 2 has type ‘char (*)[50]’ [-Wformat]
Compilação terminada com sucesso.

E o programa de rodou mesmo com os erros acima é esse:

#include<stdio.h>
#include<string.h>
int main()
{
float n1,n2,n3,n4,m;
char nome[50];
printf("ESTE PROGRAMA C%cLCULA A M%cDIA DE 4 NOTAS\n\n",181,144);
printf("\nDigite o Nome do Aluno :");
scanf("%s",&nome);
printf("\nDigite a Primeira Nota :");
scanf("%f",&n1);
printf("\nDigite a Segunda Nota :");
scanf("%f",&n2);
printf("\nDigite a Terceira Nota :");
scanf("%f",&n3);
printf("\nDigite a Quarta Nota :");
scanf("%f",&n4);
m=(n1+n2+n3+n4)/4;
if(m<4)
{
printf("\n%s %.2f retido",nome,m);
}
else if(m<5)
{
printf("\n%s %.2f Recuperaço",nome,m);
}
else
{
printf("\n%s %.2f Promovido",nome,m);
}

return 0;

}





  


62. Re: Programação em c.

Mariana Ribeiro Mendes
meldenne

(usa Linux Mint)

Enviado em 01/10/2012 - 16:00h

Você chegou a executar o arquivo?
Lá no Geany tem três opções "Compilar o arquivo atual", "Constrói o arquivo atual" e "Executa o arquivo atual"...
Mesmo com o erro, você está o executando e está dando certo neh?

Agore tire o & do nome, aqui:

Isso:

printf("\nDigite o Nome do Aluno :");
scanf("%s",&nome);


Vira isso:

printf("\nDigite o Nome do Aluno :");
scanf("%s",nome);


Compile e verá que não terá mais problemas, depois o execute... também não dará problemas...

Aproveite e leia:

http://www.inf.pucrs.br/~pinho/LaproI/IntroC/IntroC.htm


http://www.vivaolinux.com.br/dica/Lendo-strings-com-espaco-em-branco-usando-scanf/

Repare que nos códigos dele, ele não usa & antes da string quando vai lê-la




63. Re: Programação em c.

Jeferson
Deis

(usa Ubuntu)

Enviado em 01/10/2012 - 16:15h

Agora neste programa, eu acredito que o compilador do Geany não entenda o " sqrt "

gcc -Wall -o "media geometrica" "media geometrica.c" (no diretório: /home/maranata/Área de Trabalho)
/tmp/ccSgjjqS.o: In function `main':
media geometrica.c:(.text+0x6d): undefined reference to `sqrt'
collect2: ld returned 1 exit status
Compilação falhou.

Como já comentei estou usando o Geany para programar. A tecla F9 constroi " eu não sei oque significa constroi" Mas se eu não apertar o programa não roda. A tecla F8 Compila. E a tecla F5 executa.

Neste link: " http://www.hardware.com.br/comunidade/raiz-quadrada/757721/ " mostra uma solução, mas eu não uso o terminal para complilar e executar. O proprio Geany faz isso com as teclas mensionadas.


#include<stdio.h>
#include<math.h>

int main()
{
float nota1,nota2,mg;
printf("Digite o valor da nota1 e tecle enter :");
scanf("%f",&nota1);
printf("Digite o valor da nota2 e tecle enter :");
scanf("%f",&nota2);
mg=sqrt(nota1*nota2);
printf("A Media Geometrica e :%.3f", mg);
return 0;
}



64. Re: Programação em c.

Mariana Ribeiro Mendes
meldenne

(usa Linux Mint)

Enviado em 01/10/2012 - 18:20h

Deis escreveu:

Agora neste programa, eu acredito que o compilador do Geany não entenda o " sqrt "

gcc -Wall -o "media geometrica" "media geometrica.c" (no diretório: /home/maranata/Área de Trabalho)
/tmp/ccSgjjqS.o: In function `main':
media geometrica.c:(.text+0x6d): undefined reference to `sqrt'
collect2: ld returned 1 exit status
Compilação falhou.


Faça o seguinte:

No Geany mesmo, tem uma aba que se chama terminal, escolha ela...

Compile o programa por lá

Entre na pasta que está o seu arquivo .c com


cd [caminhodoarquivo]


Dê um ls para confirmar que seu arquivo está lá. Se ele estiver compile:

gcc meuprograma.c -o sqrt -lm


Depois execute:

./meuprograma.c


Se ele der alguma mensagem sobre permissão negada, digite:

chmod +x meuprograma.c


E tente executá-lo novamente.

Veja se vai dar certo ou se irá retornar alguma mensagem de erro...



65. Re: Programação em c.

Jeferson
Deis

(usa Ubuntu)

Enviado em 02/10/2012 - 14:20h

meldene; muito obrigado mais uma vez por sua pasciência em me ajudar.

No topico 63, eu já consegui resolver e deu certo. Eu não me lembro oque eu fiz que deu certo. Não precisou tirar o "&".

Na dúvida do topico 63, eu vi a aba do terminal mas não consegui entrar dentro da pasta onde esta o programa.

No link abaixo tem um print. Você poderia me ajudar a entrar na pasta? O caminho esta bem em cima no programa Geany.

http://imgur.com/ghT6E






66. Re: Programação em c.

Mariana Ribeiro Mendes
meldenne

(usa Linux Mint)

Enviado em 02/10/2012 - 14:31h

Deis escreveu:

meldene; muito obrigado mais uma vez por sua pasciência em me ajudar.

No topico 63, eu já consegui resolver e deu certo. Eu não me lembro oque eu fiz que deu certo. Não precisou tirar o "&".

Na dúvida do topico 63, eu vi a aba do terminal mas não consegui entrar dentro da pasta onde esta o programa.

No link abaixo tem um print. Você poderia me ajudar a entrar na pasta? O caminho esta bem em cima no programa Geany.

http://imgur.com/ghT6E





Pra entrar na pasta
[code]
cd /home/maranata/Programação em C
[code]

Quando você começar a digitar Programação em C, quando estiver mais ou menos no Pro, dê um TAB, pra ele completar o resto pra vc, pode ser que só digitando ele não reconheça por causa dos espaços... ou mude o nome da pasta pra programacao_em_c, fica mais fácil.

=D

Veja se consegue.


67. Re: Programação em c.

Perfil removido
removido

(usa Nenhuma)

Enviado em 02/10/2012 - 14:45h

Deis escreveu:

meldene; muito obrigado mais uma vez por sua pasciência em me ajudar.

No topico 63, eu já consegui resolver e deu certo. Eu não me lembro oque eu fiz que deu certo. Não precisou tirar o "&".

Na dúvida do topico 63, eu vi a aba do terminal mas não consegui entrar dentro da pasta onde esta o programa.

No link abaixo tem um print. Você poderia me ajudar a entrar na pasta? O caminho esta bem em cima no programa Geany.

http://imgur.com/ghT6E






cd Programação\ em\ C\ Linux/

Mas como já foi dito, o tab facilita, mas o que mais facilita é evitar espaços


68. Re: Programação em c.

Jeferson
Deis

(usa Ubuntu)

Enviado em 02/10/2012 - 16:31h

meldene; o comando: " cd /home/maranata/Programação em C " , não deu certo.

Deu certo o comando do leolfm: " cd Programação\ em\ C\ Linux/ "

Mas tem um problema. Entrou na pasta: " cd Programação\ em\ C\ Linux/ "

Mas tem mais uma etapa; entrar na pasta Calculo da Area que eu não estou conseguindo. Me desculpe a minha ignorância. Eu tenho muita dificuldade de entrar nas pastas via terminal.

http://imgur.com/0sVna


69. Re: Programação em c.

Mariana Ribeiro Mendes
meldenne

(usa Linux Mint)

Enviado em 02/10/2012 - 16:48h

Deis escreveu:

meldene; o comando: " cd /home/maranata/Programação em C " , não deu certo.

Deu certo o comando do leolfm: " cd Programação\ em\ C\ Linux/ "

Mas tem um problema. Entrou na pasta: " cd Programação\ em\ C\ Linux/ "

Mas tem mais uma etapa; entrar na pasta Calculo da Area que eu não estou conseguindo. Me desculpe a minha ignorância. Eu tenho muita dificuldade de entrar nas pastas via terminal.

http://imgur.com/0sVna


[code]
cd Calculo\ da\ Area/
[code]

é só continuar com os mesmos passos, indo uma pasta atrás da outra... e se tiver espaços usar \ antes dos espaços.

n.n



70. Re: Programação em c.

Jeferson
Deis

(usa Ubuntu)

Enviado em 02/10/2012 - 16:58h

meldenne escreveu:

Deis escreveu:

meldene; o comando: " cd /home/maranata/Programação em C " , não deu certo.

Deu certo o comando do leolfm: " cd Programação\ em\ C\ Linux/ "

Mas tem um problema. Entrou na pasta: " cd Programação\ em\ C\ Linux/ "

Mas tem mais uma etapa; entrar na pasta Calculo da Area que eu não estou conseguindo. Me desculpe a minha ignorância. Eu tenho muita dificuldade de entrar nas pastas via terminal.

http://imgur.com/0sVna


[code]
cd Calculo\ da\ Area/
[code]

é só continuar com os mesmos passos, indo uma pasta atrás da outra... e se tiver espaços usar \ antes dos espaços.

n.n


Nossa; eu não consigo:

http://imgur.com/RbqxW

http://imgur.com/Bm12E


71. Re: Programação em c.

Jeferson
Deis

(usa Ubuntu)

Enviado em 02/10/2012 - 17:45h

Eu me perdi tudo aqui. Errei de pasta e estou passando informação errada para voc&#7869;s.

O programa que não esta rodando por usa sqrt "raiz Quadrada" esta dentro desta pasta:

http://imgur.com/5Dejj

Eu preciso entrar nela para dar esse comando:

Para compilar: gcc Media geometrica.c -o sqrt -lm

Para executar: ./Media geometrica

Isso porque o Geany não compreende o "sqrt"

Se o Geany compreendesse; era só dar um F9, F8 e F5 estaria resolvido.

Descupe eu passar informações erradas para vocês.





72. Re: Programação em c.

Mariana Ribeiro Mendes
meldenne

(usa Linux Mint)

Enviado em 02/10/2012 - 17:46h

Tente isso:

[code]
cd /home/maranata/Programação\ em\ C\ Linux/Calculo\ da\ Area
[code]






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts