1 – 38 de 38
Blogger luizcarloscorreia disse...

obligado pelo trabalho...
foi um dos melhores que já vi...
espero um dia poder fazer um..
trabalho desse...beijos por enquanto...

10 de agosto de 2013 às 16:03

Blogger Thiago Furlan disse...

Parabéns, baita trabalho!

18 de agosto de 2013 às 13:08

Anônimo Luan Cardoso disse...

Na pagina "Soluções das questões sobre o laço FOR", no exercicio "6.", o código não será efetivo caso o terceiro número a ser digitado seja maior que o segundo e menor que o primeiro. Nesse caso o segundo maior não será efetivamente o segundo maior.
Eu construi o código desta maneira e funcionou:

#include "stdio.h"

int main()
{
int maior,
segundo_maior,
num,
count;

for(count=1, maior=0, segundo_maior=0 ; count<=9 ; count++)
{
printf("Digite o numero %d: ", count);
scanf("%d", &num);

if(num > maior)
{
maior = num;
}
else
if(num>segundo_maior&&num<maior)
{
segundo_maior=num;
}
}

printf("Maior: %d\n", maior);
printf("Segundo maior: %d\n", segundo_maior);
}


Att.,

17 de setembro de 2013 às 04:51

Anônimo Apostila C Progressivo disse...

Opa, valeu Luan. Realmente tava incompleto o código, vou alterar lá e corrigir outras coisas também.

Lembrando que, no seu código, se 'num > maior', você altera só o valor de 'maior', mas tem que alterar o de 'segundo_maior' também. E você está contando só de 1 até 9

Na nossa solução, estávamos alterando só no caso de 'num>maior'.
Mas também tem o caso 'num > segundo_maior'.

Isso pode ser resolvido com:
if(num > maior)
{
segundo_maior = maior;
maior = num;
}
else
if(num > segundo_maior)
segundo_maior = num;

Outro problema: note que estamos começando 'maior' e 'segundo_maior' com valor 0. Ou seja, podemos ter problemas se digitarmos valores negativos (na questão não diz que é pra colocar só positivos).

17 de setembro de 2013 às 05:18

Anônimo Luan Cardoso disse...

Muito obrigado pela dica.

Tenho outra dpuvida, na apostila de "DO...WHILE", quando executo os programas que contem " system("cls || clear"); ", aparece a mensagem " error: 'system' was not declared in this scope "

O que devo fazer?

17 de setembro de 2013 às 06:21

Anônimo Apostila C Progressivo disse...

Luan,

Além da stdio, adicione a stdlib também

17 de setembro de 2013 às 20:45

Anônimo Anônimo disse...

Gostaria que vocês postassem sobre o algoritmo de dijkstra em C.

23 de setembro de 2013 às 20:27

Blogger @guipolonca disse...

Parabéns, o site é excelente e me ajudou muito!

1 de outubro de 2013 às 15:22

Anônimo Anônimo disse...

muito fera o site! Parabéns à equipe e muito obrigado por compartilhar conhecimento!

2 de outubro de 2013 às 07:07

Anônimo Anônimo disse...

Gostaria de contribuir com o site com
conteúdos, como posso fazer para ajudar ?

9 de outubro de 2013 às 16:26

Blogger Ralph Albert Sommer disse...

Olá,
o tutorial de c está muito bom. Apenas no capítulo de modificadores de int está escrito: 'short' em inglês, significa curso e 'long', longo.

deveria ser:'short' em inglês, significa curto

valeu pela apostila online.
um abraço.

22 de outubro de 2013 às 18:17

Anônimo Apostila C Progressivo disse...

Opa, valeu ralph!

O corretor não avisou pois existe a palavra 'curso'.

Abraço.

22 de outubro de 2013 às 18:28

Blogger hubert disse...

poderia me explicar esse exercício de função:

Desenvolva um programa em C que leia dois números e chame uma função que retorne
se os valores digitados são iguais ou diferentes. O programa deve ficar em execução até ser
digitado um valor negativo para o primeiro número.

hubert2@bol.com.br

9 de novembro de 2013 às 10:23

Anônimo Apostila C Progressivo disse...

Olá hubert,

Crie um programa que peça dois números. Passe esses números para a função.

Dentro da função você compara, se forem iguais, você retorna 1, se forem diferentes retorna 0 (um simples IF ELSE).

Você bota esse processo de perguntar os números e enviar pra função dentro de um laço, um WHILE por exemplo. Esse laço só vai terminar se o primeiro número digitado for negativo.

11 de novembro de 2013 às 11:35

Anônimo Carlos Augusto disse...

Olá Bom dia!

Gostaria de saber como faço para imprimir a saida de mais de um while, por exemplo:

int N, CONTADOR;
printf ("Digite um numero inteiro:");
scanf ("%i", &N);
CONTADOR=1;

printf("SOMA\n");
while(CONTADOR<=10)
{
printf("%i + %i = %i\n", N, CONTADOR, N+CONTADOR);
CONTADOR=CONTADOR+1;
}

printf("SUBTRACAO\n");
while(CONTADOR<=10)
{
printf("%i - %i = %i\n", N, CONTADOR, N-CONTADOR);
CONTADOR=CONTADOR+1;
}

return 0;
}

Imprime somente a saida do 1º while, depois a palavra SUBTRAÇÃO. Mas a saida do 2º while nao imprime.
Obrigado!
Carlos.

13 de novembro de 2013 às 04:37

Anônimo Apostila C Progressivo disse...

Carlos Augusto,

Note que ao término de seu primeiro laço a variável CONTADOR vai ter valor 11.

E pra ela iniciar o segundo ela, tem que ter valor menor que 10, é por isso que o segundo laço nem inicia.

Antes do segundo WHILE faça: CONTADOR=1

13 de novembro de 2013 às 17:06

Blogger hubert disse...

muito obrigado pela a ajuda consegui montar a parte de comparação sem a função mas não sei colocar dentro da função poderia me ajudar.

Desenvolva um programa em C que leia dois números e chame uma função que retorne
se os valores digitados são iguais ou diferentes. O programa deve ficar em execução até ser
digitado um valor negativo para o primeiro número.


#include
#include

main()
{
int n1, n2;
printf("Digite o primeiro numero");
scanf("%d",&n1);

printf("Digite o segundo numero");
scanf("%d",&n2);

if (n1 > n2)
printf("O primeiro numero e o maior %d",n1);

if (n1 < n2)
printf("O segundo numero e o maior %d",n2);

system("pause");
}

16 de novembro de 2013 às 06:06

Blogger Unknown disse...

Boas sou um recente fá seu e do seu trabalho.

Sou um estudante e este site esta a ajudar imenso.

Gostava no entanto de saber se há alguma parte referente as variáveis estáticas é que não encontro, e é onde tenho mais dificuldades.

obrigado, cumprimentos

18 de janeiro de 2014 às 15:33

Anônimo Marcelo Vieira disse...

Cara primeiro parabéns pelo site, estou estudando C e em Conceitos Básicos da Linguagem C, Recebendo números do usuário - A função scanf : no final existe um exercício, o mesmo solicita que se faça uma divisão de dois números Double, depois de muito quebrar a cabeça busquei na internet a solução vale a pena postar, talvez alguem tenha dado este erro no scanf colocar "%lf" ao invés de "%f". valeu.

3 de fevereiro de 2014 às 14:25

Blogger Unknown disse...

ME AJUDEM?
" Sejam duas listas encadeadas l1 e l2 ordenadas. Escreva uma função que construa uma lista ordenada contendo os elementos que pertencem simultaneamente a l1 e l2. Suponha que as listas não contém elementos repetidos. As listas originais não podem ser alteradas. A assinatura desta função é dada por:

Tlista* insercao(Tlista* l1, Tlista* l2) "

1 de junho de 2014 às 06:47

Anônimo Marcel Carvalho disse...

Muito boa apostila, realmente é difícil encontrar conteúdo em C tão bem explicado gratuitamente.

Mas acho que o formulário de inserção de comentários deveria ser incorporado a postagem e não em uma nova janela como está.

1 de agosto de 2014 às 14:35

Anônimo Anônimo disse...

tentei comentar usando a minha conta do google,mas foi pedida uma palavra-chave. Que palavra chave é essa?

25 de dezembro de 2014 às 19:40

Anônimo Anônimo disse...

Equipe C progressivo, parabéns pelo site

25 de dezembro de 2014 às 19:42

Blogger ze disse...

Parabéns pelo site, equipe C progressivo. Sempre que possível e satisfeito alguma coisa me deixar como as questoes de fibonacci e do diamante. eu postarei um comentário como forma de agradecimento.

25 de dezembro de 2014 às 22:52

Blogger Unknown disse...

Boa tarde, gostei muito dos videos sobre a linguagem C no Code blocks. Sera que eu poderia te mandar uma questão pra tu resolver? É que to precisando da resolução dela, mas não to conseguindo de jeito nenhum. Agradeceria demais!!
A questão é essa:

Deseja-se fazer sistema para informatizar um banco. Para isso os dados dos clientes do banco devem ser armazenados em arquivo de dados, que tem a seguinte estrutura:
Agencia (int)
Conta_corrente (int)
Nome (char [40])
Saldo (float)
Limite de cheque especial (float)

O sistema possue o seguinte menu:
[1] - Cadastrar Cliente
[2] - Consultar Saldo
[3] - Deposito
[4] - Saque
[5] - Encerrar conta
[6] - Sair
Opção:

Fazer um programa em C:
a) A função void para ler e armazenar no arquivo os dados dos clientes do banco, não admitir a entrada de agencia e conta já existente.
b) Fazer uma função void para consultar o saldo do cliente. Ao digitar a agencia e conta corrente do cliente deverá ser mostrado o Nome, o Saldo, o limite de cheque especial do cliente. Caso a agencia e conta corrente não esteja cadastrada informe CONTA CORRENTE INVALIDA!
c) Fazer uma função void para efetuar um deposito na conta corrente do cliente. Ao digitar a agencia e conta corrente do cliente e o valor a depositar atualizar o Saldo do cliente e informe DEPOSITO EFETUADO COM SUCESSO! Caso agencia e conta corrente não esteja cadastrada informe CONTA CORRENTE INVALIDA!
d) Fazer uma função void para efetuar um saque na conta corrente de um cliente. Ao digitar a agencia e conta corrente do cliente e o valor a sacar, verificar se o saldo + o limite de cheque especial são suficientes para autorizar o saque, em caso afirmativo atualizar o saldo do cliente e informe SAQUE EFETUADO COM SUCESSO! Caso não exista saldo suficiente informe SALDO INSUFICIENTE! Caso agencia e conta corrente não esteja cadastrada informe CONTA CORRENTE INVALIDA!
e) Fazer uma função void para encerrar a conta corrente de um cliente. Ao digitar a agencia e conta corrente do cliente, verificar se o saldo está zero, pois o encerramento da conta só poderá ser feito se a conta estiver com saldo zero, e perguntar se realmente deseja encerrar a conta do cliente se afirmativo proceder a exclusão e informe EXCLUSAO EFETUADA COM SUCESSO!
f) Faze uma função void para fazer o menu de opções como descrita acima.
g) Fazer a função main.

2 de junho de 2015 às 11:25

Blogger Evariste Musekwa disse...

Agora estou aprendendo Programar em C. Este tutorial eh muito facil de acompanhar.
Muito obrigado por esta iniciativa que esta ajudando milhares de pessoas!

19 de julho de 2015 às 04:16

Blogger Unknown disse...

Preciso de ajuda aqui! Devem ser respondidas em linguagem c++ e usando o assunto de funções recursivas.

01.Escreva uma função recursiva que, a partir da passagem de um número inteiro positivo, exiba todos os números naturais pares inferiores ou iguais àquele número em ordem crescente. Observação: os números devem ser exibidos em uma única linha, separados por símbolos de vírgula.

02.Escreva uma função recursiva, de nome inverso, que identifica e retorna o inverso, em relação à ordem dos dígitos, de um número inteiro. A função recebe apenas um argumento: o número inteiro a partir do qual será obtido seu inverso. Observação: para a implementação da função, é sugerido a realização das seguintes operações, se considerado um número inteiro com 2 ou mais dígitos: a) Extração do último dígito, seguido do seu armazenamento em uma string através do uso da função sprintf1 (biblioteca stdio.h); b) Extração dos dígitos restantes, seguido do seu armazenamento em uma segunda string; c) Concatenação das strings das operações discriminadas nos itens a e b (com o último dígito acrescentado ao final da sequência dos dígitos restantes), através do uso da função strcat2 (biblioteca string.h); d) Conversão da string resultante da concatenação para um inteiro, através do uso da função strtol3 (biblioteca stdlib.h).

5 de agosto de 2015 às 11:59

Blogger Unknown disse...

Olá boa tarde!

Sera que alguém poderia me ajudar neste exercício urgentemente!

1. As estruturas

struct ponto{int x, y;};

struct retangulo { estruct ponto sup_esquerdo, inf_direito };

Um ponto é uma estrutura que armazena as coordenadas x e y de um

ponto na tela. Um retângulo é uma estrutura que armazena as

coordenadas dos pontos superior esquerdo e inferior direito. Escreva

funções para realizar o que se pede sobre uma estrutura retangulo r

passada como argumento

(a) Calcular a área de de r

(b) Calcular o centro de r, retornando um valor do tipo ponto. Se x e y não

forem do tipo inteiro, armazenar os valores truncados em uma

estrutura ponto

(c) Mover r x unidades na direção x e y unidades na direção y,

retornando a versao modificada de r (x e y são argumentos adicionais

da função)

(d) Determinar se um ponto p está em r, retornando verdadeiro ou falso

(p é um argumento adicional do tipo struct ponto)

15 de agosto de 2015 às 13:31

Anônimo Eliel Souza disse...

Olá preciso muito de ajuda para saber como faço o codigo para esse programa.

Escrever um programa em linguagem C que retorne o valor do seguinte somatorio. Use Função.


s= 1/2 +-2/3 + 3/4 - 4/5 + .... -1000/1001



me ajudem por favor

10 de novembro de 2015 às 06:08

Anônimo Anônimo disse...

Chayenne Barbosa: A resposta é fazer a função main.

17 de novembro de 2015 às 19:03

Blogger Unknown disse...

Irei estudar estrutura de Dados, no qual irá cair os assuntos abaixo. Gostaria de saber se o site contempla o assunto e, se não, gostaria da indicação de material sobre o assunto.

EMENTA:
Tipos abstratos de dados. Técnicas de utilização de apontadores. Representação e manipulação de filas, pilhas e árvores. Técnicas de busca de informação na memória principal

14 de dezembro de 2015 às 12:01

Blogger Anderson Moss º"º disse...

Boa noite. Tenho uma dúvida que me bloqueia muitas vezes que é a seguinte: Ainda sou iniciante em c, agora estou vendo pilhas, só pra te posicionar mais ou menos o quanto eu sei enfim, muitas vezes eu perco muito tempo tentando "tratar erros" e acaba que o programa fica muito complexo e perco muito tempo nisso, evitando que o usuário coloque uma letra no lugar de um número e coisas do tipo, erros de entrada. Eu devo me preocupar com isso ou deixo quieto por enquanto e considero que o usuário vai fazer certo, apenas para poupar tempo e deixar pra aprender isso mais pra frente ou devo aprender isso agora? Tem algum tutorial ensinando sobre isso? obg

24 de fevereiro de 2016 às 19:11

Blogger Unknown disse...

Urgente! Preciso de ajuda no seguinte exercício de Programação em linguagem C:

Utilizando vetores e strings, faça com que o usuário digite uma palavra, em seguinte peça ao usuário uma frase, a partir daí o programa tem que contar quantas vezes a palavra inserida aparece na frase! Estou enviando o código de como eu fiz o programa para ver ser algum professor pode me ajudar, pois quase todo o programa está certo, só a parte de contar quantas vezes a palavra pedida ao usuário aparece na frase que também foi pedida na frase. Exemplo:
Insira uma palavra: Mesa
Insira uma frase: O jantar já está na mesa!
Quantas vezes aparece a palavra:
1 vez

CÓDIGO FONTE QUE EU FIZ:

#include
#include
#include

void fim()
{
printf("Fim do programa busca texto\n");
}

main()
{
char frase[999],pal[15],cod;
int x,y,i,c;
i=0;
c=0;
do{
printf("Informe uma palavra:");
scanf("%s",pal);
printf("Informe uma frase:");
scanf("%s",pal);

for(x=0;pal[x]!='\0';x++){
for(y=0;frase[y]!='\0';y++){
c=strcmp(frase,pal);
if(c==0){
i++;
}}
}

printf("Aparece %d \n",i);
printf("Deseja realizar novo calculo: s-Sim n-Nao");
scanf(" %c",&cod);
}
while(cod=='s');

fim();


system("pause");
}



obs: Por favor me ajudem, já tentei resolver a parte de contar quantas vezes a palavra aparece e não consigo de jeito nenhum, e é só esta parte que não está funcionando! Por favor, peço ajuda nesta questão! Entre em contato comigo por: alexandrecostabarrientos@gmail.com

26 de abril de 2016 às 07:06

Blogger Unknown disse...

Boa tarde!

Não estou conseguindo baixar a apostila, poderia me ajudar?

email: flavioabreu9@gmail.com

26 de abril de 2017 às 13:22

Blogger Unknown disse...

Oi,

Eu gostaria de obter teu nome e teu sobrenome e teu lugar de onde tu publicas o site para a bibliografia no TCC porque teus artigos estão sem nome e lugar. Por favor, passa-mos. Obrigado!

Gustavo

3 de novembro de 2018 às 13:19

Blogger Filho disse...

Bom dia, oi, qual é o melhor o Livro C Progressivo ou a apostila C Progressivo. Pretendo comprar, obrigado, aguardo uma resposta, até mais.
Tudo que tem na apostila tem no livro?

12 de agosto de 2020 às 07:34

Anônimo C Progressivo disse...

Olá Unknown, por conta do tanto de e-mail que recebo com essa dúvida, criei a apostila C Progressivo.

Fiz faculdade, fiz curso de programação presencial, compro cursos online, muitos e muitos e muitos livros, apostilas...e montei na apostila C Progressivo a maior e mais completa, sobre a linguagem. Já incluindo algoritmos e lógica da programação.

Pode ir nela sem medo. Se não gostar, fala que a gente te devolve o dinheiro.

13 de agosto de 2020 às 07:16

Anônimo Anônimo disse...

bom dia o senhor poderia informar se na sua cidade existe escola profissionalizante qu oferece cursso de programçao para computador o senhor r progrmador de computador qual o valor taxa de inscriçao para o cursso de programaçao de computador sem mais para o momento ateciosamente municipio taquaritinga estado de sao paulo cep 15900063.

29 de outubro de 2022 às 05:51

É quase impossível criar centenas de páginas voltadas para programação C e não cometer algum erro.

- Se notar algum conceito, letra ou trecho de código errado, deixe sua correção

- Se perceber uma maneira melhor ou mais eficiente de fazer algo, deixe sua ideia

- Se algo não ficar claro ou for confuso, nos avise

Aos poucos vamos aumentando e melhorando a qualidade de nosso material, e para isso contamos com sua ajuda.
Você pode usar algumas tags HTML, como <b>, <i>, <a>

A moderação de comentários foi ativada. Todos os comentários devem ser aprovados pelo autor do blog.

Depois de enviar seu comentário, será necessário fazer login.
Prove que você não é um robô