Ruka284 Posted July 17, 2012 at 03:02 PM Report Share #469003 Posted July 17, 2012 at 03:02 PM #include <stdio.h> #include <stdlib.h> int main() { printf("Primeiro Profecto!n\n"); printf("o que acham deste projecto! n\n"); printf("o que esta mal ou bem!n\n"); system("pause"); return 0; } Qual vossa opinião sobre meu primeiro projecto?? Link to comment Share on other sites More sharing options...
Flinger Posted July 17, 2012 at 03:10 PM Report Share #469004 Posted July 17, 2012 at 03:10 PM 😄 Isso é C e não C++, logo estás na secção errada do fórum. printf("Primeiro Profecto!n\n"); "Projecto" e não "Profecto"; "n\n": O "Enter" é apenas "\n". printf("o que acham deste projecto! n\n"); printf("o que esta mal ou bem!n\n"); O "Enter" é apenas "\n". system("pause"); Isto apenas funciona em windows, por isso o teu primeiro projecto já é dependente do S.O. (Má política) 😛 Link to comment Share on other sites More sharing options...
pmg Posted July 17, 2012 at 03:12 PM Report Share #469005 Posted July 17, 2012 at 03:12 PM O teu projecto parece mais C que C++. Eu não sei C++, mas suponho que nessa linguagem seria mais parecido com isto #include <iostream> #include <cstdlib> int main() { std::cout << "Primeiro Profecto!\n\n"; std::cout << "o que acham deste projecto! \n\n"; std::cout << "o que esta mal ou bem!\n" << std::endl; system("pause"); return 0; } De qualquer maneira, tanto em C como em C++, o system("pause"); é evitável. O uso dessa instrução limita o teu projecto a um único sistema operativo; se usares outra maneira de parar o programa podes fazer um projecto que funciona em mais computadores. What have you tried? Não respondo a dúvidas por PM A minha bola de cristal está para compor; deve ficar pronta para a semana. Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código! Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted July 17, 2012 at 05:59 PM Report Share #469028 Posted July 17, 2012 at 05:59 PM Eu não sei C++, mas suponho que nessa linguagem seria mais parecido com isto todas as entradas '\n' deveria passar para std::endl e deveria encadear todas operações e a política de uso do system("pause") é a mesma, isto resulta em : #include <iostream> #include <cstdlib> int main() { std::cout << "Primeiro Profecto!" << std::endl << std::endl << "o que acham deste projecto! " << std::endl << std::endl << "o que esta mal ou bem!" << std::endl << std::endl; return 0; } IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
pmg Posted July 17, 2012 at 09:22 PM Report Share #469056 Posted July 17, 2012 at 09:22 PM todas as entradas '\n' deveria passar para std::endl ... Hmm ... o std::endl nao forca um flush do stream (e possivelmente outra gestao desse stream)? Tenho a impressao de ter lido que basta coloca-lo no fim do output para ter o efeito desejado ... e que "abusar" dele resulta em trabalho a mais para o programa. O '\n' em C++ serve normalmente para acabar uma linha, tal e qual como em C. Como disse antes nao sei C++. Uma pesquisa rapida nao revelou a fonte desta ideia que eu tenho. What have you tried? Não respondo a dúvidas por PM A minha bola de cristal está para compor; deve ficar pronta para a semana. Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código! Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted July 17, 2012 at 10:51 PM Report Share #469066 Posted July 17, 2012 at 10:51 PM Hmm ... o std::endl nao forca um flush do stream (e possivelmente outra gestao desse stream)? Tenho a impressao de ter lido que basta coloca-lo no fim do output para ter o efeito desejado ... e que "abusar" dele resulta em trabalho a mais para o programa. O '\n' em C++ serve normalmente para acabar uma linha, tal e qual como em C. Como disse antes nao sei C++. Uma pesquisa rapida nao revelou a fonte desta ideia que eu tenho. Sim, é verdade que o std::endl força o "flush" de "buffered streams" da mesma forma que o '\n' porque a maior parte dos stream são "line buffered" como a consola. A única diferença é que o std::endl é um "string manipulator" que tem um "overhead" mínimo. Logo, se o pretendido é a performance, dever-se-á usar o '\n', mas em termos de paradigma, a solução std::endl é a mais correcta. IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
Ruka284 Posted July 23, 2012 at 10:01 PM Author Report Share #469839 Posted July 23, 2012 at 10:01 PM Outro teste que fiz. O que acham ?? include <stdio.h> int main () { int Dias; /* Declaracao de Variaveis */ float Anos; printf ("Entre com o número de dias: "); /* Entrada de Dados */ scanf ("%d",&Dias); Anos=Dias/365.25; /* Conversao Dias->Anos */ printf ("\n\n%d dias equivalem a %f anos.\n",Dias,Anos); return(0); } Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted July 23, 2012 at 10:11 PM Report Share #469842 Posted July 23, 2012 at 10:11 PM (edited) novamente isso não é c++, é c primeiro usa as tags do geshi segundo, esse código em c++ é include <iostream> using namespace std; int main () { int dias; cout << "Entre com o número de dias: "); cin >> &dias; cout << endl << endl << dias << " dias equivalem a " << (dias/365.25) << " anos." << endl; return 0; } Edited July 23, 2012 at 10:12 PM by HappyHippyHippo IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
pmg Posted July 23, 2012 at 10:12 PM Report Share #469843 Posted July 23, 2012 at 10:12 PM (edited) Mais um programa que parece C. Se queres aprender C++, aconselho-te a que escrevas programas de teste nessa linguagem: vai-te poupar muitas dores de cabeca no futuro. Em C (e, suponho eu, em C++) e aconselhavel usar double quando se pretende ter um valor com casas decimais. O tipo double e usado internamente pelo compilador, tem mais precisao que o tipo float e, na maioria dos computadores actuais, e mais rapido. So em casos muito excepcionais e que se deve pesar o uso de float em vez de double. Em C, o normal e as variaveis terem nomes em minusculas: principalmente variaveis compostas por apenas uma palavra. Uma questao de gosto pessoal de cada um, mas que eu acho que aumenta a legibilidade do codigo, e o espacamento entre os diversos tokens. Eu gosto de meter um espaco a seguir as virgulas, entre as operacoes aritmeticas, ... O return nao precisa de parentesis: sao redundantes e desnecessarios, tal como no exemplo abaixo Anos = Dias / (365.25); Tirando isto, esta bom 🙂 Edited July 23, 2012 at 10:14 PM by pmg What have you tried? Não respondo a dúvidas por PM A minha bola de cristal está para compor; deve ficar pronta para a semana. Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código! Link to comment Share on other sites More sharing options...
pikax Posted July 23, 2012 at 10:13 PM Report Share #469845 Posted July 23, 2012 at 10:13 PM novamente isso não é c++, é c primeiro usa as tags do geshi segundo, esse código em c++ é include <iostream> using namespace std; int main () { int dias; cout << "Entre com o número de dias: "); cin >> &dias; cout << endl << endl << dias << " dias equivalem a " << (dias/365.25) << " anos." << endl; return 0; } correcao: cin>>dias; Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender. A beleza de um código está em decompor problemas complexos em pequenos blocos simples. "learn how to do it manually first, then use the wizzy tool to save time." "Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast." Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted July 23, 2012 at 10:26 PM Report Share #469851 Posted July 23, 2012 at 10:26 PM correcao: cin>>dias; obrigsda .. eu não uso a STL e depois dá nisto IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now