Deixem suas dúvidas, elogios, críticas, o que está faltando, erratas, sugestão de aulas, etc:
http://progressiva.forumeiros.com/
Para demais assuntos: jarlisson.moreira [a] gmail . com
Para referências bibliográficas: Moreira de Matos, Francisco Jarlisson
Fortaleza, Ceara - Brasil
Temos também um grupo no Facebook:
Programação Progressiva
38 comentários:
obligado pelo trabalho...
foi um dos melhores que já vi...
espero um dia poder fazer um..
trabalho desse...beijos por enquanto...
Parabéns, baita trabalho!
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.,
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).
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?
Luan,
Além da stdio, adicione a stdlib também
Gostaria que vocês postassem sobre o algoritmo de dijkstra em C.
Parabéns, o site é excelente e me ajudou muito!
muito fera o site! Parabéns à equipe e muito obrigado por compartilhar conhecimento!
Gostaria de contribuir com o site com
conteúdos, como posso fazer para ajudar ?
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.
Opa, valeu ralph!
O corretor não avisou pois existe a palavra 'curso'.
Abraço.
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
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.
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.
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
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");
}
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
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.
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) "
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á.
tentei comentar usando a minha conta do google,mas foi pedida uma palavra-chave. Que palavra chave é essa?
Equipe C progressivo, parabéns pelo site
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.
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.
Agora estou aprendendo Programar em C. Este tutorial eh muito facil de acompanhar.
Muito obrigado por esta iniciativa que esta ajudando milhares de pessoas!
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).
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)
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
Chayenne Barbosa: A resposta é fazer a função main.
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
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
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
Boa tarde!
Não estou conseguindo baixar a apostila, poderia me ajudar?
email: flavioabreu9@gmail.com
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
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?
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.
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.
Postar um comentário