Monday, 2 October 2017

C ++ Média Móvel


Eu tomei uma aula em C e aprendi um pouco disso sozinho e acho que estou no ponto em que eu poderia fazer alguns programas simples (mais do que apenas algumas centenas de linhas de código, como exemplos de livros), mas eu não Tenha boas ideias para o que programar. Comecei a escrever código para um RPG baseado em texto, mas eu quero tentar codificar algo mais como os programadores reais que programam para um código vivo. Qualquer pessoa que trabalhe no campo tenha alguma sugestão. No fórum Lounge, existem algumas idéias. Aqui estão alguns: hrm. Posso sugerir uma seção adicionada para idéias de projeto. Uma das coisas com que sempre lutei quando aprendi uma nova linguagem é encontrar projetos que testassem meus conhecimentos sem chegar à frente do que eu li ou entendi. (Enquanto isso é algo divertido e divertido para praticar. Algo que me deu algum tipo de recompensa, como escrever um programa para o qual eu realmente poderia usar). Uma seção em que os projetos poderiam ser submetidos, além de dificuldades ou Alguma maneira de saber em que ordem é melhor fazê-los seria uma ótima idéia. Eu sei que provavelmente não é muita ajuda para você, icemanfan. Mas provavelmente ajuda pessoas como eu, que apenas começaram C. Esta é a minha lista que eu fiz. ele Ele. Estou preso no número 22. lolz. Não conseguiria que a classe de classe de bolhas estúpidas funcionasse por 2 noites agora. Suspiros. Iniciante 1. Escreva um programa que encontre o fatorial de um número inserido pelo usuário. (Verifique todas as condições) (Iniciante). 2. Desenvolva um programa para converter moeda X em moeda Y e vice-versa (iniciante). 3. Escreva um programa que imprime o seguinte, o usuário entrará o número superior: 4. Escreva um programa que imprime o seguinte, o usuário entrará o número inferior: 5. Escreva um programa que desenha o seguinte triângulo, o usuário Irá inserir o número inferior: 6. Desenvolva um programa que use um número gerado aleatoriamente para selecionar 1 de 3 (ou mais) funções para mostrar o usuário. (Iniciante) 7. Adivinhar o jogo. Escreva um jogo c que peça ao usuário adivinhar um número entre 1 e 100. Se você adivinhou corretamente, ele irá dizer que você ganha. Se você for alto demais ou muito baixo, ele também o informará. (Principiante) 8. Crie um programa que gere séries Fibonacci até um número n onde n é inserido pelo usuário. Por exemplo, Se o usuário entrar 10, então a saída seria: 1 1 2 3 5 8 (Iniciante) 9. Determine quantos caracteres são vogais e quantos são consoantes em uma determinada linha de texto. Também termina a string quando o caractere de entrada encontrado é diferente dos alfabetos. (Principiante). 10. Encontre a quinta raiz da soma dos quadrados dos primeiros 100 números ODD apenas. (Iniciante) 11. Execute 4 letras WORD UNSCRAMBLING, ou seja, liste todas as combinações possíveis de 4 letras em uma palavra. Ex: A palavra TEST pode ser descifrada como TEST, TETS, TSET, TSTE, TTSE, TTES, etc. (Iniciante) 12. Faça um programa que permita ao usuário inserir o raio, o diâmetro ou a área do círculo. O programa deve então calcular os outros 2 com base na entrada. (Iniciante) 13. LER uma linha de texto e ESCRITA-A PARA TRÁS, usando a função RECURSIVE. (Iniciante) 14. Escreva um programa para SWAP o conteúdo de 3 variáveis ​​sem usar as variáveis ​​temporárias (ou extra). (Iniciante) 15. Escreva um programa que reverte os números em um número inteiro, ou seja, 326 torna-se 623, etc. (Iniciante) 16. O programa indicará ao usuário cada vez que ele adivinhou alto ou baixo. O usuário GANHA o jogo quando o número adivinhado é igual ao número gerado aleatoriamente. (Iniciante) 17. Escreva um programa para simular uma calculadora simples. Deve aceitar dois números do usuário juntamente com a operação necessária para ser executada. A adição, subtração, divisão e multiplicação são as operações básicas que devem ser implementadas. Sinta-se livre para implementar as outras operações (Iniciante) 18. Determine quanto dinheiro está em um cofrinho que contenha várias moedas de paises, 25 moedas paises, 20 moedas paises, 10 moedas paises e 5 moedas paises. Use os seguintes valores para testar seu programa. Cinco moedas de 50 paises, três moedas de 25 paises, duas moedas de 20 paises, uma moeda de 10 paises e quinze 5 moedas de paise. (Iniciante) 19. Crie um programa de verificador Palindrome simples. O programa deve permitir que o usuário digite uma string e verifique se a string dada é um palindrome ou não. Apenas os dígitos e os alfabetos devem ser considerados ao verificar os palíndromes - qualquer outro caractere deve ser ignorado. (Iniciante) 20. Escreva um programa que lhe permite inserir pontuações e pontuações de alunos. O programa deve então calcular uma média ponderada e pontuação com base nos dados inseridos pelo usuário. (Iniciante) Intermediário 21. Escreva um programa que imprimirá todos os pares de números primos cuja soma é igual ao número inserido pelo usuário. (Sugerido por Aniseed) (Intermediário) 22. Desenvolva uma base de programa de classificação de animais no reino animal. (Para praticar o uso de classes habitantes). 23. Escreva um programa de questionário, que recupere a pergunta e responda a partir de um arquivo. Em seguida, permita que o usuário tome o ponto de interrogação e obtenha o resultado. (Intermediário) 24. Escreva um programa que aceite XHTML, analise e remova as tags. Em seguida, imprime o texto restante. (Intermediário) 25. Escreva um programa que execute a adição, subtração, multiplicação de matrizes. As dimensões de ambas as matrizes seriam especificadas pelo usuário (alocação de memória dinâmica necessária). O uso de estrutura ou uma classe para definir a matriz seria uma boa idéia. (Intermediário) 26. Escreva um programa que executará o trabalho de mover o arquivo de um local para outro. O caminho de origem e de destino será inserido pelo usuário. Execute a verificação de erros necessária e lide com as exceções em conformidade. (Intermediário) 27. Crie uma classe de lista vinculada sofisticada. Você deve inserir e excluir nós em qualquer lugar da lista, e os nós devem ter ponteiros para nós na frente e atrás deles. (Intermediário) 28. Crie um programa que implementa um banco de dados em C. Os campos são codificados e os dados são salvos em um arquivo binário. Embora isso não seja realmente flexível, você não está confiando em bibliotecas ou funções externas. (Intermediário) Especialista 1. Implementar seu próprio strstr. 2. Escreva um programa que atuasse como um planejador pessoal. Em que um usuário pode inserir no evento, observe o que há para fazer em determinada data. 3. Programa Tic Tac Toe. 4. Criptografia de arquivo simples (usando algo simples como ROT13.) 5. Escreva um programa de livro de endereço de telefone, com dados economizados em arquivos binários. Os usuários devem poder adicionar a troca de dados. 6. Escreva um programa de folha de pagamento simples, que inclua taxas de pagamento E crie algumas classes que modelam as cartas de jogo. Em seguida, use esta estrutura para criar seu jogo de cartas favorito. Blackjack..etc (expert) 8. Crie algumas classes que modelam peças de xadrez. Em seguida, desenvolva um Jogo de xadrez real. (Expert) 9. Crie uma árvore binária que tenha funções de busca e classificação. (Expert) 10. Crie um Quine, ou seja, um programa que imprima seu próprio código fonte. (Expert) 11. Implementar o seu próprio Versão do padrão da biblioteca de modelos. (Expert) Gráficos 1. Escreva um programa para desenhar um retângulo, elipse, quadrado, círculo, ponto e linha com base na entrada do usuário. (Iniciante) 2. Escreva um programa para emular o Microsoft Paint. Ser possível alternar entre diferentes ferramentas (círculo, retângulo, borracha). Usando pré-de Golpes de chaves multados. Intermediário 3. Escreva um programa para traçar um gráfico x-y simples para uma função codificada (por exemplo, ycos (x)). Deve ser possível ampliar em qualquer parte do gráfico. - Intermediário. 4. Escreva um programa para traçar um gráfico da equação dada da forma yf (x) e um intervalo para x como argumentos da linha de comando. (Por exemplo, o calculador gráfico - eqyxx - xmin-10, - xmax10) - Especialista. (PS: mais para fazer com a resolução de equações do que com os gráficos) 5. Escreva o clássico jogo de reboco de tijolos. Por exemplo. Veja DX Ball. Especialista. Última edição em 11 de agosto de 2008 às 3:04 am UTC0.4 8212 Introdução ao desenvolvimento Por Alex em 27 de maio de 2007 modificado pela última vez por Alex em 26 de junho de 2016 Antes de poder escrever e executar nosso primeiro programa, precisamos entender em mais Detalhes sobre como os programas C se desenvolvem. Aqui está um gráfico que descreve uma abordagem simplista: Etapa 1: Defina o problema que você gostaria de resolver. Este é o passo 8220 oq8221, onde você descobre o que você vai resolver. Começar com a idéia inicial para o que você gostaria de programar pode ser o passo mais fácil, ou o mais difícil. Mas conceitualmente, é o mais simples. Tudo o que você precisa é uma idéia que pode ser bem definida, e você está pronto para o próximo passo. Aqui estão alguns exemplos: 8220 Eu quero escrever um programa que me permita inserir números e, em seguida, calcula a média.8221 8220. Quero escrever um programa que gera um labirinto 2d e permite que o usuário navegue através dele.8221 8220 Eu quero escrever Um programa que lê em um arquivo de preços das ações e prevê se o estoque subirá ou diminuirá.8221 Etapa 2: determine como você vai resolver o problema. Este é o passo 8220how8221, onde você determina como você vai resolver o problema que surgiu no passo 1. É também o passo que é mais negligenciado no desenvolvimento de software. O cerne da questão é que existem muitas maneiras de resolver um problema - no entanto, algumas dessas soluções são boas e algumas delas são ruins. Muitas vezes, um programador terá uma idéia, sente-se e comece imediatamente a codificar uma solução. Isso muitas vezes gera uma solução que cai na categoria ruim. Normalmente, as boas soluções possuem as seguintes características: são diretas. Eles estão bem documentados (especialmente quaisquer suposições feitas). Eles são construídos de forma modular, de modo que as peças podem ser reutilizadas ou alteradas posteriormente sem impactar outras partes do programa. Eles são robustos e podem recuperar ou dar mensagens de erro úteis quando ocorre algo inesperado. Quando você se senta e começa a codificar imediatamente, you8217re pensa tipicamente que eu quero fazer isso8221, então você implementa a solução que faz você chegar lá o mais rápido. Isso pode levar a programas que são frágeis, difíceis de mudar ou estender, ou têm muitos erros. Estudos mostraram que apenas 20 de um tempo de programador8217s são realmente gastos escrevendo o programa inicial. Os outros 80 são gastos de depuração (corrigindo erros) ou mantendo (adicionando recursos para) um programa. Consequentemente, vale a pena gastar um pouco de tempo extra antes de começar a codificar pensando na melhor maneira de enfrentar um problema, quais os pressupostos que você está fazendo e como você planeja o futuro, para se economizar muito De tempo e problemas na estrada. Nós conversamos mais sobre como efetivamente projetar soluções para problemas em uma lição futura. Passo 3: escreva o programa Para escrever o programa, precisamos de duas coisas: primeiro precisamos de conhecimento de uma linguagem de programação - que8217s que esses tutoriais são para Segundo, precisamos de um editor. It8217 é possível escrever um programa usando qualquer editor que você quiser, mesmo que seja tão simples como o bloco de notas Window8217s ou o Unix8217s vi ou pico. No entanto, recomendamos que use um editor projetado para codificação. Don8217t se preocupe se você não tem mais um. We8217ll cobre como instalar um em breve. Um editor típico projetado para codificação possui alguns recursos que facilitam a programação, incluindo: 1) numeração de linha. A numeração de linha é útil quando o compilador nos dá um erro. Um erro típico do compilador indicará 8220error, linha 648221. Sem um editor que mostra números de linha, encontrar a linha 64 pode ser um verdadeiro aborrecimento. 2) Sincronização de destaques e coloração. O destaque e coloração de sintaxe altera a cor de várias partes do seu programa para facilitar a visualização da estrutura geral do seu programa. 3) Uma fonte não ambígua. Fontes sem programação muitas vezes dificultam a distinção entre o número 0 e a letra O, ou entre o número 1, a letra l (minúsculas L) e a letra I (maiúsculas e minúsculas i). Uma boa fonte de programação irá diferenciar esses símbolos para garantir que um isn8217t seja usado acidentalmente no lugar do outro. Seus programas C devem ser chamados de nome. cpp, onde o nome é substituído pelo nome do seu programa. A extensão. cpp informa ao compilador (e você) que este é um arquivo de código-fonte C que contém instruções C. Observe que algumas pessoas usam a extensão. cc em vez de. cpp, mas recomendamos que você use. cpp. Observe também que muitos programas C complexos têm vários arquivos. cpp. Embora a maioria dos programas que você crie inicialmente terá apenas um único arquivo. cpp, é possível escrever programas únicos que possuem dezenas, se não centenas de arquivos. cpp individuais. Para compilar um programa, precisamos de um programa chamado compilador. O trabalho do compilador é duplo: 1) Para verificar o seu programa e verifique se segue as regras da linguagem C. Se não, o compilador irá dar-lhe um erro para ajudar a identificar o que precisa ser consertado. 2) Para converter cada arquivo de código-fonte em um arquivo de linguagem de máquina chamado arquivo de objeto. Os arquivos de objeto geralmente são nomeados nome. o ou nome. obj, onde nome é o mesmo nome que o arquivo. cpp do qual foi produzido. Se o seu programa tivesse 5 arquivos. cpp, o compilador geraria 5 arquivos de objeto. Apenas para fins ilustrativos, a maioria dos sistemas Linux e Mac OS X vêm com um compilador C chamado g. Para usar g para compilar um arquivo da linha de comando, faria isso: g - c file1.cpp file2.cpp file3.cpp Isso criaria file1.o, file2.o e file3.o. O - c significa 8220compile only8221, que diz a g para apenas produzir arquivos. o (objeto). Outros compiladores estão disponíveis para Linux, Windows e praticamente todos os outros sistemas. Vamos discutir a instalação de um compilador na próxima seção, então não há necessidade de fazê-lo agora. Para projetos complexos, alguns ambientes de desenvolvimento usam um makefile. Que é um arquivo que informa ao compilador quais arquivos compilar. Makefiles é um tópico avançado, e livros inteiros foram escritos sobre eles. Felizmente, você não precisa se preocupar com eles, então não discutiremos aqui. A ligação é o processo de tirar todos os arquivos de objeto gerados pelo compilador e combiná-los em um único programa executável que você pode executar. Isso é feito por um programa chamado linker. Além dos arquivos de objeto para um programa, o vinculador também inclui arquivos da biblioteca padrão C (ou qualquer outra bibliografia pré-compilada que you8217re use, como gráficos ou bibliotecas de som). A linguagem C em si é bastante pequena e simples. No entanto, ele vem com uma grande biblioteca de componentes opcionais que podem ser utilizados por seus programas e esses componentes vivem na biblioteca padrão C. Por exemplo, se você quisesse exibir algo na tela, seu programa incluiria um comando especial para dizer ao compilador que você queria usar as rotinas de IO (inputoutput) da biblioteca padrão C. Uma vez que o vinculador termine de vincular todos os arquivos de objetos (assumindo que tudo corre bem), você terá um arquivo executável. Mais uma vez, para fins ilustrativos, para vincular os arquivos. o que criamos acima em uma máquina Linux ou OS X, podemos usar novamente g: g - o prog file1.o file2.o file3.o O - o diz o que queremos Um arquivo executável denominado 8220prog8221 que é construído a partir de file1.o, file2.o e file3.o As etapas de compilação e link podem ser combinadas se desejado: g - o prog file1.cpp file2.cpp file3.cpp O que combinará a Compilar e vincular etapas em conjunto e produzir diretamente um arquivo executável chamado 8220prog8221. Etapa 6: Testando e Depurando Esta é a parte divertida (espero) Você é capaz de executar seu executável e ver se ele produz a saída que você esperava. Se não, então o tempo de it8217s para alguma depuração. Vamos discutir a depuração com mais detalhes em breve. Observe que as etapas 3, 4, 5 e 6 envolvem software. Embora você possa usar programas separados para cada uma dessas funções, um pacote de software conhecido como um pacote integrado de IDE (Integrated Development Environment) agrupa e integra todos esses recursos em conjunto. Com um IDE típico, você obtém um editor de código que faz numeração de linha e destaque de sintaxe. Você obtém um compilador e um vinculador. O IDE gerará automaticamente os parâmetros necessários para compilar e vincular seu programa em um executável, mesmo que inclua vários arquivos. E quando você precisa depurar seu programa, você pode usar o depurador integrado. Além disso, os IDE8217 normalmente agrupam uma série de outros recursos de edição úteis, como ajuda integrada, conclusão de nomes, navegadores hierárquicos e às vezes um sistema de controle de versão. Falaremos mais sobre a instalação e o uso de IDEs na próxima seção. Joyel Eu realmente estou aprendendo coisas deste tutorial que eu não conheci anteriormente. Depois de estar no (s) campo (s), especializo-me por 7 anos e uma longa estrada. Estou finalmente aprendendo algumas coisas sobre as quais sempre me perguntei. Algumas das maneiras como você explica as coisas chegam a onde eu não acho que vou esquecer o que estou aprendendo. Obrigado novamente pelo ótimo tutorial. Este tutorial parece ser bom. Eu acho que isso ajuda que eu não seja um monte de Visual Basic, mas isso parece estar me fazendo passar. Espero que eu conheça C corretamente até o final do próximo mês XD8230 Como a forma como o autor explicou os conceitos. Este tutorial é ótimo (ou, como dirá Data, 8220intriguing8221). Eu inicialmente não planejei entrar na cena de programação, porque eu sou um Técnico de Reparo de PC licenciado, e minha carga de trabalho é escandalosamente enorme. Mas meu trabalho espera que eu conheça um par de linguagens de programação (eu conheço HTML e CSS, mas não são exatamente linguagens de programação de software - oh e eu conheço o haha ​​binário) e esse tutorial é realmente agradável de ler. E it8217s perfeito para pessoas da minha idade (16 anos) porque is8217s grátis (eu sei) e fácil de entender. Estou totalmente preparado para aprender mais idiomas agora: i8217ve nunca tocou em qualquer programação8230, a menos que você considere o HTML como um. Mas este tutorial tornou tão simples para mim entender Muito obrigado, eu realmente gosto de como este tutorial não era muito exigente. Obrigado por ter instruções para mac também a maioria das pessoas deixa macs fora. Idk porque, no geral, isso foi fácil de entender Tutorial Awesome. Gostaria de ter coisas como esta de volta quando comecei a aprender VB. Oi Alex, qual é a sua ideia sobre o Qt. É bom. É muito diferente com a programação do console C. Pode comparar o Qt e o C. Qual é o melhor tnx. Eu gosto do Qt. It8217s é uma biblioteca sólida e multiplataforma com muita funcionalidade útil, incluindo componentes GUI. Eu também gosto porque doesn8217t requerem um monte de dependências para serem instaladas primeiro. Você pode distribuir tudo com seu executável, o que facilita a instalação do seu aplicativo. E isso é eficiente. Eu posso falar com C, pois não tenho muita familiaridade com isso. R4Z3R Oi Alex, sempre me pergunto como algo como o photoshop está escrito em C Eu encontrei uma pergunta na web que era minha pergunta. Até que idiomas seriam usados ​​para criar algo como o Adobe Photoshop I8217ve criou cerca de 2 programas usando c, mas they8217re como as coisas do tutorial onde eles são executados no DOS, e o mais avançado que eu fiz foi adicionar dois números. Mas como você faria um programa onde ele se abre fora do DOS, com a própria interface do it8217 e coisas assim. Basicamente, algo como o photoshop ou qualquer programa como Excel ou word gtgt C GUI bibliotecas não fazem parte das bibliotecas padrão, então eu acho que eles não usaram para escrever algo como photoshop ou Mozilla apps 8230 So How. (Esta questão está me deixando louca) You8217re correto, C GUI bibliotecas aren8217t parte do padrão C. Eu acho que o principal motivo é porque as aplicações GUI são específicas do sistema operacional. A biblioteca C tende a manter as coisas que são agnósticas do sistema operacional. Felizmente, há bibliotecas externas para preencher as lacunas. QT é uma biblioteca popular para fazer aplicações GUI multi-plataforma. Se você não se importar de ser específico do Windows, você pode ter sua interface de aplicativo com o Windows diretamente e criar um aplicativo MFC. Há muitas outras bibliotecas C GUI também. É apenas uma questão de encontrar o caminho certo para qualquer coisa que você tente fazer (e o que o orçamento é). I8217m não tenho certeza do que a biblioteca Photoshop usa (ou se a Adobe escreve seu próprio código para cada sistema operacional). R4Z3R Olá novamente, eu ainda não sei o que podemos fazer com C., por exemplo, se queremos desenvolver aplicativos GUI do Windows, acho que C é uma boa escolha. Se quisermos desenvolver aplicativos Android, o Java é bom. Quero dizer, ninguém gosta de programas que funcionam no ambiente DOS ou Terminal. O que é útil que podemos criar com C (no ambiente DOS) I8217m aprendendo C, mas I8217m não tenho certeza para continuar aprendendo 8230 cada corpo diz que os CC são linguagens poderosas que podem se associar diretamente ao hardware e gerenciar a memória o que podemos fazer com isso. Você pode fazer qualquer coisa com C, incluindo a criação de aplicativos GUI do Windows. C se destaca em aplicações de alto desempenho, baixa latência e restrição de memória (por exemplo, incorporadas). It8217s utilizados em jogos e simulações 2d3d, finanças, fabricação, sistemas embarcados, sistemas operacionais, compiladores, tocadores de música, aplicativos de servidor, motores de busca e tudo intermediário. Ao contrário de Java ou C, C doesn8217t requer uma estrutura enorme para ser instalada primeiro (as estruturas JVM. Net). Dada uma tarefa específica, outras línguas podem ser mais fáceis ou mais adequadas para usar, então isso realmente depende do que você deseja especificamente e quais são seus requisitos de desempenho. Este tutorial ensina a usar o ambiente do console, porque it8217s é fácil e multi-plataforma. Uma vez que você conhece os fundamentos do C, aprender a escrever aplicativos GUI é muito mais simples do que tentar aprender a fazer C e escrever aplicativos GUI simultaneamente. Além disso, uma vez que você conhece C, mover-se para Java ou C (ou vice-versa) é mais fácil, pois eles possuem sintaxes semelhantes e muitos conceitos de programação fundamentais são agnósticos de linguagem. Eu queria saber se você poderia me ajudar no Skype ou algo que eu tenho muitos problemas (Oi, Alex I8217m um pouco confuso sobre algo. Você diz acima que todos os programas devem ter a extensão. cpp. Com quotprogramsquot, você quer dizer o arquivo do projeto Ou os arquivos dentro do projeto Sempre que eu iniciar um novo projeto com CodeBlocks eles me pedem um título de projeto. Quando eu dou um nome, ele adiciona esse nome na caixa do nome do arquivo do projeto abaixo com uma extensão. cbp. Quando eu mudo. cbp Para. cpp, ele é salvo. Somente o problema é que, quando eu tento abri-lo novamente, CodeBlocks não o encontra a menos que eu defina o tipo de arquivo para arquivos C. Então, quando eu abrir, ele não abre como um projeto, mas como algum arquivo com Muitas coisas escritas por isso que eu não entendo. Eu sei que, dentro de um projeto, eu deveria dar qualquer novo arquivo. Eu criei a extensão. cpp e depois é agrupada com o arquivo main. cpp no ​​projeto. Então, o que eu preciso de esclarecimentos é Se eu deveria usar a extensão. cpp no ​​arquivo do projeto quando eu Comece um novo projeto (embora eu tenha a sensação de que não é o que você quis dizer), ou apenas para qualquer novo arquivo que eu adicionei ao projeto existente, eu significo os arquivos de código dentro do projeto. Você pode nomear o projeto o que você quiser (don8217t alterar a extensão do projeto embora).

No comments:

Post a Comment