Pesquisar na Comunidade

A mostrar resultados para tags ''c++''.

  • Pesquisa por Tags

    Introduza as tags separadas por vírgulas.
  • Pesquisar por Autor

Tipo de Conteúdo


Fórum

  • Bem-vindos ao Portugal-a-Programar
    • Sugestões, Críticas ou Dúvidas relativas ao P@P
    • Acerca do P@P
    • Apresentações
  • Comunidade a Trabalhar
    • Wiki P@P
    • Apresentação de Projectos de Programação
    • Downloads
  • Revista PROGRAMAR
    • Revista PROGRAMAR
  • Desenvolvimento Geral
    • C
    • C++
    • Java
    • Haskell
    • Pascal
    • Python
    • Bases de Dados
    • Visual Basic Clássico
    • Visual Basic for Applications (VBA)
    • Dispositivos Móveis
    • Outras Linguagens
  • Desenvolvimento Orientado para Web
    • PHP
    • HTML
    • CSS
    • Javascript
    • Outras Linguagens de WebDevelopment
    • Desenvolvimento Web
  • Desenvolvimento .NET
    • C#
    • Visual Basic .NET
    • ASP.NET
    • WPF & SilverLight
  • Software e Sistemas Operativos
    • Software de Produtividade
    • Sistemas Operativos
    • SharePoint
    • Apresentação de Software
  • Informática Extra-Programação
    • Interfaces Visuais
    • Computação Gráfica
    • Algoritmia e Lógica
    • Segurança e Redes
    • Hardware
    • Electrónica
    • Automação Industrial
    • Dúvidas e Discussão de Programação
    • Notícias de Tecnologia
  • Outras Áreas
    • Matemática
    • Dúvidas Gerais
    • Discussão Geral
    • Eventos
    • Anúncios de Emprego
    • Tutoriais
    • Snippets / Armazém de Código
  • Arquivo Morto
    • Projectos Descontinuados
    • System Empires

Blogs

  • Projectos
  • Revista PROGRAMAR
  • Blog dos Moderadores
  • Eventos
  • Notícias de Tecnologia
  • Blog do Staff
  • Wiki

Categorias

  • Revista PROGRAMAR
  • Tutoriais
  • Textos Académicos
  • Exercícios Académicos
    • Exercícios c/ Solução
    • Exercícios s/ Solução
  • Bibliotecas e Aplicações
  • Outros



Filtrar por número de...

133 resultados

  1. Olá, boa tarde à todos! Eu sou leigo ainda, mas estou estudando e estava à procura de um código que faça com quem a DLL hookada em um executavel, puxe o outro Por exemplo: Tenho um mxmain.exe e tenho o Launcher.exe, então eu crio essa dll com esse código, ponho ela no MxMain.exe, e quando a pessoa clicar pra abrir direto no MxMain.exe, a dll faz com que o Launcher.exe abra primeiro, pra depois que o Launcher estiver aberto, o MxMain.exe possa abrir... se alguém puder me ajudar, eu ficaria grato.. Obrigado
  2. Boa tarde. Queria alterar a imagem de uma PictureBox por parâmetros, esses que vieram de outro Form, e aqui faria a correspondência desse diretório para a Nave, só que está me a dar este erro e não estou a conseguir decifrar outra forma de associar a variável do tipo char, wordjog1, à respetiva Nave. private: System::Void arena_Load(System::Object^ sender, System::EventArgs^ e) { strcpy(Nave->ImageLocation, wordjog1); } Desde já obrigado.
  3. Para quem quiser fazer um curso de C++ Gratuito (Video Aulas), língua Portuguesa (Br), tem a oportunidade de o fazer. Basta se inscrever na Udemy e adicionar o Curso de C++ - Intermediário. Espero que aproveitem.
  4. Criei uma .dll em C e está funcionando muito bem, porém não estou conseguindo utilizá-la em outros projetos, alguém tem um código de exemplo em C ou C++ que possa compartilhar? Estou chamando a dll da seguinte forma: #include <windows.h> #include <stdio.h> #include "dll.h" int main ( ) { HINSTANCE hinst; if ( ! ( hinst = LoadLibrary ( "minha.dll" ) ) ) { MessageBox ( 0, "erro", "", 0 ); return 0; } soma ( 12, 8 );//Esta função deve ser chamada de dentro da dll //src\main.o(.text+0x40):main.cpp: undefined reference to `_imp___Z4somaii' FreeLibrary ( hinst ); return 0; } O erro apresentado está comentado no código
  5. Olá Ao fazer cálculos mais rigorosos em C++, apercebi-me de certas particularidades: pow(a,(1/3) não é igual a pow(a,0.333333). Isto é significativo quando são exigidos cálculos matemáticos nesta área. Assim, num programa C++ onde figurem raízes cúbicas, por exemplo, é conveniente adicionar a linha na área do cabeçalho #define ir3 0.333333. Para futuros cálculos utilizaremos pow(a,ir3) . Em BASIC é indiferente (ver mais abaixo) Nota: isto em relação ao compilador usado por mim( GNU); não utilizei outros (ainda) #include <iostream> #include <cmath> using namespace std; #define ir3 0.333333 int main() { for (float i=1;i<50;i=i+5) { cout<<"valor com 1/3= "<<pow(i,(1/3))<<endl; cout<<"valor com 0.333333= "<<pow(i,ir3)<<endl; } return 0; } Resultados: valor com 1/3= 1 valor com 0.333333= 1.81712 valor com 1/3= 1 valor com 0.333333= 2.22398 valor com 1/3= 1 valor com 0.333333= 2.51984 valor com 1/3= 1 valor com 0.333333= 2.75892 valor com 1/3= 1 valor com 0.333333= 2.96249 valor com 1/3= 1 valor com 0.333333= 3.14138 valor com 1/3= 1 valor com 0.333333= 3.30192 valor com 1/3= 1 valor com 0.333333= 3.44821 valor com 1/3= 1 valor com 0.333333= 3.58304 dim i as single const ir3=0.333333 for i=1 to 50 step 5 print print "com 1/3= ";(i^(1/3)) print print "com 0.333333= ";(i^ir3) print next end resultados: com 1/3= 1 com 0.333333= 1 com 1/3= 1.81712059283214 com 0.333333= 1.817119507551454 com 1/3= 2.223980090569315 com 0.333333= 2.223978312946244 com 1/3= 2.519842099789746 com 0.333333= 2.519839770962227 com 1/3= 2.75892417638112 com 0.333333= 2.758921376513688 com 1/3= 2.96249606840737 com 0.333333= 2.962492851043056 com 1/3= 3.141380652391393 com 0.333333= 3.141377056573129 com 1/3= 3.301927248894626 com 0.333333= 3.301923304724039 com 1/3= 3.44821724038273 com 0.333333= 3.448212971984297 com 1/3= 3.583047871015946 com 0.333333= 3.583043298283729
  6. Olá, boa tarde Para a determinação das 3 raízes reais de uma equação do 3º grau, caso a condição se verifique, tenho sempre erro em C++, ao contrário do BASIC que me dá resultado certos. O método usado foi o chamado método trigonométrico, para o caso de 3 raízes reais. Código em BASIC 'Cálculo do valor das raízes de uma eq do 3º grau const pi=3.141593 dim as single yy,p,pp,q,cc,tt,teta,x1,x2,x3,z1,z2,r1,i1,a,b,c,d,aa,bb print "entrada dos coeficientes:" input a:input b:input c:input d If a=0 Then Print Print "O coeficiente 'a' TEM QUE SER DIFERENTE DE 0" Print Print "carregue numa tecla para finalizar" Sleep End EndIf yy=b/(3*a) p=(c/(3*a))-(b^2/(9*(a^2))) q=((2*b^3)/(27*a^3)-(b*c/(3*(a^2))))+(d/a) cc=q^2+(4*(p)^3) if cc<0 then tt=q/(2*sqr((-p)^3)) teta=(1/3)*(pi/2-atn(tt/(sqr(-tt*tt+1)))) pp=-2*sqr(-p) x1=pp*cos(teta)-yy x2=pp*cos(teta+(120/180*pi))-yy x3=pp*cos(teta+(240/180*pi))-yy print print "3 raizes reais" print print "x1= ";x1 print "x2= ";x2 print "x3= ";x3 print print "f(x1)= ";a*x1^3+(b*x1^2)+(c*x1)+d print "f(x2)= ";a*x2^3+(b*x2^2)+(c*x2)+d print "f(x3)= ";a*x3^3+(b*x3^2)+(c*x3)+d Código em C++ int tergrau() { float p,q,cc,a,b,c,d,tt,teta,pp,x1,x2,x3,yy; cout<<"Resolução da equação do 3º grau"; cout<<endl; cout<<"Faca entrar os coeficientes:"<<endl; cin>>a;cin>>b;cin>>c;cin>>d;cout<<endl; yy=b/(3*a);cout<<"yy= "<<yy<<endl; p=(c/(3*a))-(pow(b,2)/(9*(pow(a,2)))); cout<<"p= "<<p; q=((2*(pow(b,3)/(27*pow(a,3)))-(b*c/(3*pow(a,2))))+(d/a)); cout<<"q= "<<q<<endl; cc=pow(q,2)+(4*pow(p,3)); cout<<"cc= "<<cc<<endl; if (cc<0){ tt=q/(2*sqrt(pow(-p,3))); cout<<"tt= "<<tt<<endl; teta=(1/3)*(pi/2-atan(tt/(sqrt(-tt*tt+1)))); cout<<"teta= "<<teta<<endl;cout<<"pi= "<<pi<<endl; pp=-2*sqrt(-p); cout<<"pp= "<<pp<<endl; x1=pp*cos(teta)-yy; x2=pp*cos(teta+(120/180*pi))-yy; x3=pp*cos(teta+(240/180*pi))-yy; cout<<endl; cout<<"3 raizes reais"<<endl<<endl; cout<<"x1= "<<x1<<endl; cout<<"x2= "<<x2<<endl; cout<<"x3= "<<x3<<endl<<endl; cout<<"f(x1)= "<<a*pow(x1,3)+(b*pow(x1,2))+(c*x1)+d<<endl; cout<<"f(x2)= "<<a*pow(x2,3)+(b*pow(x2,2))+(c*x2)+d<<endl; cout<<"f(x3)= "<<a*pow(x3,3)+(b*pow(x1,3))+(c*x3)+d<<endl; } return 0; } No caso do código c++, inseri somente a rotina de cálculo de equaçõas do 3º grau ( o programa tem, ainda, outras rotinas que calculam as equações do 1º grau e do 2º grau) Pois, estranhamente, não obtenho os valores correctos com o programa c++, ao contrário do BASIC. Aparentemente, a maior diferença é no cálculo da variável teta. Problemas de cálculos trigonométricos por parte do compilador (GNU)? Ou problemas na construção das expressões em c++? (Acrescentei impressões auxiliares para tentar resolver o problema - debug) Obrigado pela atenção.
  7. Alguém pode me explicar como eu posso criar uma matriz?
  8. Estou a fazer um dos meus primeiros programas e estava a tentar ler de uma só vez 2 variáveis do ecran: 1 char e uma letra. int num; char car; printf("Insira uma letra e um numero: "); scanf_s("%c %i", &car, &num); printf("Você digitou: %c e %i '", car, num); quando corro o programa e se eu digitar por exemplo a2, aparece-me como resultado: Insira uma letra e um numero: a2 Você digitou: a e -858993460 O que estou a fazer errado na leitura da 2ª variável do tipo inteiro ? Obrigado Paula
  9. Estou a desenvolver um jogo em C++, em modo gráfico. Consiste em dois jogadores, um contra o outro em que cada um tem balas. Estou com dificuldades na condição que satisfaça "bala tocou no jogador adversário", o que tentei, mas logo me apercebi de que não poderia funcionar era: if((pox_X_Bala1 == nave2->Location.X) && (pox_Y_Bala1 == nave2->Location.Y)). Sugestões? Qualquer esclarecimento adicional sobre o código envolvente, digam. Desde já obrigado.
  10. O programa terá um menu inicial com 6 opcões; -Inserir dados do cliente; -Mostrar os dados dos clientes existentes; -Procurar cliente(por número de contribuinte); -Atualizar dados dos clientes; -Eliminar todos os clientes existentes em ficheiro; -Sair; Os dados referentes aos clientes são: número de contribuinte, nome, morada,código postal,localidade e telefone;
  11. Olá a todos antes de mais, Estou a fazer um trabalho para a universidade bastante simples. O objectivo é o utilizador introduzir um valor, e nós dizermos se o número é primo ou não. Eu desenvolvi um fluxo grama juntamente com uma tabela de verificação e bateu tudo certo. Desenvolvi o código e algo não está a bater certo, está sempre a devolver a mesma resposta, "O número é primo", independentemente do valor que colocarmos lá. Talvez um par de olhos frescos consiga ver o meu erro. Desde já muito obrigado pela vossa atenção. [CHEERS] # include <stdio.h> # include <stdlib.h> # include <iostream> # include <locale.h> # include <iomanip> using namespace std; int main () { setlocale(LC_ALL,""); int n, r, quo, div,result; div=2; cout << "Introduza o número a ser verificado: "; cin >> n; do{ r=n%div; quo=n/div; div++; } while (r!=0 && div<=quo); if (r!=0||n==2){ result=1; }else{ result=0; } if (result=0){ cout << "O número não é primo."; }else{ cout << "O número é primo."; } }
  12. Toolkits gráficos: (para janelas) GTK wxWidgets Qt FLTK (Fast Light Toolkit) (para aplicações multimedia/jogos) Allegro DirectX OpenGL SDL (Simple DirectMedia Layer) ClanLib Bibliotecas de suporte: libglade - gera as janelas através de um ficheiro .XML gerado pelo Glade gtkmm - bindings de C++ para GTK Bakery - framework que facilita a criação de aplicações de janelas em GNOME/gtkmm sdlmm - bindings de C++ para SDL OpenML - framework que facilita sincronização de audio/vídeo Editores de GUIs grátis/open-source: Glade - editor oficial para toolkit GTK wxGlade - editor de GUIs para toolkit wxWidgets wxFormBuilder - editor de GUIs para toolkit wxWidgets VisualWX - editor de GUIs para toolkit wxWidgets Editores de GUIs pagos/proprietários: wxDesigner - editor de GUIs para toolkit wxWidgets DialogBlocks - editor de GUIs para toolkit wxWidgets IDEs com editores GUI integrados: Anjuta - solução completa com debugger, profiler, integração SVN e designer de GUI em toolkit GTK (usa o Glade) KDevelop - solução completa semelhante ao Anjuta mas para Qt wxDev-C++ - solução completa mas para wxWidgets - só funciona em ambiente Windows IDEs free/open-source: Code::Blocks - não tem nenhum editor de GUIs nativo; é possível integrar o wxSmith através de um plugin Netbeans + C/C++ pack - IDE em Java, não traz qualquer suporte para editores de GUI Eclipse + C/C++ (CDT) - IDE em Java, também não traz um editor de GUIs IDEs pagos/proprietários: C++ Builder - IDE pago, só permite criar aplicações de janelas para Windows Microsoft Visual C++ - existe uma versão Express grátis, só permite criar aplicações de janelas para Windows
  13. Estou com um problema na hora de compilar o meu código, ele está perfeito, foi feito em sala de aula. Recentemente, eu instalei o linux Ubuntu, sei que tenho que instala as bibliotecas do opengl, principalmente a mesa 3d, que estou com dificuldades para instala-las.... Embora tenha instalado várias bibliotecas, o mesmo erro persiste: gcc -o teste1 teste1.cpp -lGL -lglut -lglu teste1.cpp:7:21: erro fatal: gl/gl.h: Arquivo ou diretório não encontrado compilação terminada. Alguém pode me ajudar?
  14. Boas, É possível fazer uma matriz por exemplo assim: [1][2][3][4] [5][6][7][8] apenas com 2 for's e dois arrays e que seja possível prosseguir a numeração mantendo a estrutura de 4 digitos por linha?
  15. Boas, Estou a tentar criar um documento word através do meu código de c++, criar o documento não está a ser o problema, o problema neste momento é que precisava de criar uma tabela no word através do c++ e não estou a conseguir, alguém aqui me podia dar uma ajudinha ou um exemplo?
  16. [Nota: para além destes recursos externos, podem também encontrar conteúdos úteis no portal de downloads e no wiki.] Introduções, Tutoriais e Outras Documentações Learn C++ (Inglês) C++ Language Tutorial (Inglês) C++ Made Easy: Learning to Program in C++ (Inglês) The Function Pointer Tutorials (Inglês) 20 aulas sobre programação de jogos em C++ (Português) Apostilando - Programação em C++ (Português) Livros (disponíveis gratuitamente) Thinking in C++ Volume 1 / Thinking in C++ Volume 2 de Bruce Eckel (Inglês) The Boost C++ Libraries de Boris Schäling (Inglês) C++ Programming (Inglês) (outros) The C++ Programming Language de Bjarne Stroustrup (em Inglês) A Tour of C++ de Bjarne Stroustrup (em Inglês) The C++ Standard Library: A Tutorial and Reference de Nicolai M. Josuttis (em Inglês) C++ Primer de Stanley B. Lippman, Josée Lajoie, e Barbara E. Moo (Inglês) C++: A Beginner's Guide, Second Edition de Herbert Schildt (Inglês) OpenGL OpenGL Programming Guide (Inglês) OpenGL Reference Manual (Inglês) OpenGL Online Manual (Inglês) GL UI Manual v2 beta [PDF] (Inglês) GL UT 3 Specifications [PDF] (Inglês) Novas sugestões, assim como comentários sobre as existentes, são bem-vindas.
  17. Boa tarde, Comecei à pouco tempo a aprender c++ e neste momento a minha professora deu-me um exercício para resolver que consiste em fazer um jogo da forca. A dúvida que tenho é na parte em que temos que organizar as palavras do jogo por temas e o utilizador deve ser capaz de criar um número variado de temas, que por sua vez, contêm um número variado de palavras (p. ex., tema “Frutas”, conterá as palavras, “banana”, “maça”, “laranja” e “limão”). Deve ser possível consultar a lista de temas e palavras, além de adicionar ou eliminar temas ou palavras. A minha dúvida é como fazer uma lista de temas e dentro de cada tema tenho palavras... Lembrei-me de fazer uma lista de temas, e em cada tema ma lista de palavras, ou então uma lista de temas e cada tema é constituído por um vector multidimensional que irá conter as palavras. Será que estou a pensar bem? Será que me podem dar umas luzes de como resolvo esta situação? Ainda estou numa fase inicial do exercício, mas o resto já consegui estruturar mais ou menos. Obrigada pela atenção
  18. Boas, tou com problemas a tentar converter o '.' para ','. o meu value.c_str() contem um valor ex.: 3.55 e preciso de converter para uma variável e fique 3,55, tentei fazer pelo código que esta em baixo mas sei que não esta totalmente correto, se alguem me poder ajudar agradeço, Obrigado. cout << "Valor lido->" << value.c_str(); string str=value.c_str(); str.replace(str.begin(), str.end(), '.', ','); cout << "\nstr->" << str; float preco = strtof(value.c_str(), NULL); cout << "\nValor Final->" << preco << endl;
  19. Boa tarde, Segue o seguinte código: test.cpp #include "MyClass.h" #include "MyClass.cpp" #include <iostream> int main(){ MyClass a; } Cria o objecto "a" referente há classe MyClass. Output: Constr Dest MyClass.h onde está declarado a função do construtor e destrutor #ifndef MYCLASS_H #define MYCLASS_H class MyClass { public: MyClass(); ~MyClass(); protected: private: }; #endif // MYCLASS_H MyClass.cpp função do construtor e destrutor #include "MyClass.h" #include <iostream> using namespace std; MyClass::MyClass() { cout << "constr" << endl; } MyClass::~MyClass() { cout << "Dest" << endl; } Tenho declarado MyClass.cpp em test.cpp e só assim é que funciona. Caso comente a linha que faz " #include "MyClass.cpp" " e fique apenas incluído o MyClass.h ocorre o seguinte erro: /home/user/Documents/workspace/test.o||In function `main':| test.cpp|| undefined reference to `MyClass::MyClass()'| test.cpp|| undefined reference to `MyClass::~MyClass()'| ||=== Build failed: 2 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===| Caso inclua só o MyClass.cpp o programa também executa sem erros. Não deveria executar normalmente só incluindo o Header? Desde já obrigado
  20. Boa noite, preciso de uma ajudinha no código que tenho estado a fazer para um trabalho em que está armazenado num ficheiro txt registos referentes a produtos farmacêuticos desta maneira: Código: 0 Nome: ben-u-rum Quantidade: 20 Preço de Compra: 12.5 Preço de Venda: 15.5 Validade: 10/04/2016 ---------------------------------- Código: 1 Nome: Brufen Quantidade: 20 Preço de Compra: 9.9 Preço de Venda: 10.9 Validade: 12/09/2016 ---------------------------------- e o que pretendo é passar os valores que estão a direita dos ':' para as variáveis que tenho na struct... Tenho feito experiências com (if, swich e for) mas não tou a conseguir chegar lá , se alguém me pudesse dár uma ajuda sff! int c=0; string aux; line=""; doc_in.open("Base_Dados/Produtos.txt", ios::in); if(doc_in.is_open()) { while(getline(doc_in, line, ':')) { for(c=0; c<=1; c++) { if(line == "Código") { aux = line; cout << "\nValor é: " << aux; } else // cout << "\nn/a"; if(c==0) { if(line == "Código") { //aux = line; cout << "\nValor de 0:" << line; aux=1; } } else if(c==1) { if(aux==1) { cout << "\nValor de 1:" << line; } } } }
  21. Boas pessoal, Gostaria se possível que alguém me ajuda-se numa situação. Estou a fazer um programa da recebe entrada de ips. No momento recebo 4 octetos de forma separada no-entanto gostaria de saber se é possível fazêlo de outra forma. Ou seja , ex 192.168.0.1 O utilizador insere por extenso o ip completo e o programa vai memorizando o batimento das teclas até ser colocado um ponto. Nesse momento é passado o primeiro octeto para a variável oct1, e por aí fora... o ultimo octeto seria colocado na variavel oct4 mediante o ENTER. Seria possivel fazer algo do genero? Obrigado.
  22. galera é o seguinte, tenho esse códigozinho ai, que é uma calculadora de áreas, que usa o comando de repetição " repeat " fiquei enrolado, e nao consegui fazer esse mesmo código usando a repetição " while " , e com ' for " voces poderiam me ajudar por favor? agradeço Program qc; var opcao:integer; a1,a2,a3:real; lado:real; base, altura:real; Begin repeat clrscr; writeln('MENU'); writeln('1: PARA CALCULAR A AREA DO QUADRADO'); writeln('2: PARA CALCULAR A AREA DO RETANGULO'); writeln('3: PARA CALCULAR A AREA DO TRIANGULO'); writeln('4: PARA SAIR'); writeln(' QUAL SUA OPCAO ?'); readln (opcao); case (opcao) of 1: begin writeln('VOCE ESCOLHEU A AREA DO QUADRADO'); writeln('POR FAVOR INFORME UM DOS LADOS DO QUADRADO'); readln (lado); writeln ('A ÁREA DO SEU QUADRADO É : ', lado*lado :4:2); end; 2: begin writeln ('VOCE ESCOLHEU CALCULARMOS A ÁREA DO RETANGULO'); writeln ('VAMOS ME AJUDE, INFORME A BASE E A ALTURA DO MESMO'); readln (base,altura); writeln ('A BASE DO SEU RETANGULO É ', base*altura :4:2); end; 3: begin writeln ('VOCEE ESCOLHEU CALCULARMOS A AREA DO TRIANGULO'); writeln ('POR FAVOR INFORME A BASE A ALTURA'); readln (base, altura); writeln ('A AREA DO SEU TRIANGULO É' , ((base*altura) /2):4:2); end else begin if(opcao=4) then begin writeln ('VOCE OPTOU POR SAIR, BYE BYE'); end else begin writeln ('VOCE DIGITOU UMA OPCAO INVÁLIDA'); end; end; end; readln; until (opcao=4); End.
  23. Boas malta, preciso de uma sugestão da vossa parte. Tenho um trabalho da universidade que se está a aproximar a entrega, e as nossas aulas práticas estão um bocado apertadas na matéria, e não queria deixar tudo para fazer em cima da hora uma vez que estamos a dar coisas relativamente básicas. O nosso trabalho é relativamente simples nesta primeira fase. Temos que fazer um gerador de figuras, e um leitor das figuras geradas. O exemplo dado no enunciado para o gerador é algo como executar o comando gerador esfera 1 10 10 output.3d em que "gerador" é o nome do programa gerador de figuras, "esfera" é a figura que queremos gerar, "1 10 10" é o raio, fatias e filas que queremos na esfera, e o "output.3d" é um ficheiro em que queremos guardar os dados da figura para depois ser lida. É dito pelo enunciado, que o ficheiro de output deve ser definido por nós, e como sugestão diz que devemos usar por exemplo o número de vértices da figura, para facilitar o processo de leitura. O programa leitura, simplesmente é escolher o ficheiro output que queremos, e desenhar a cena. A minha dúvida é face ao programa gerador. Eu para desenhar uma esfera, estava simplesmente a pensar utilizar a função para o exemplo em cima: glutWireSphere(1,10,10); E isto foi o que demos para desenhar uma figura deste género. Mas eu não precisaria de saber o número de vertices para este caso, o que me leva a pensar que o uso desta função para desenhar a cena em si, não seria muito correcto. Neste momento(esta semana) só ainda estamos a dar desenho de triângulos simples, com rotações e translações, e este trabalho já é para entregar para a semana. Calculo que para a semana já aprendamos a fazer isto, mas eu queria adiantar trabalho. Como é que eu poderia por exemplo guardar todos os triângulos gerados na cena, para os poder guardar num ficheiro e posteriormente fazer o display?
  24. Olá malta estou aqui a fazer um mini projecto de c++, onde estou a criar um bloco de notas, e mais tarde vou usar para programar(ideia maluca mas pronto), e queria que o utilizador no inicio coloca-se no inicio o caminho e o nome do ficheiro exemplo : /home/fmc/ficheiro.txt Como faço?E ste código está a criar um ficheiro como default, e não inserido pelo utilizador! #include <iostream> #include <fstream> using namespace std; bool e_letra(char a) //confirma se é letra { bool saida; if ((a>='a' && a<='z') || (a>='A' && a<='Z') ) //Se for alguma letra saida=true; else saida=false; return saida; } bool e_numero(char a) //confirma se é numero { bool saida; if (a>='1' && a<='9') //se for algum numero saida=true; else saida=false; return saida; } bool e_espaco(char a) { bool saida; if (a == ' ' || a=='\t' || a== '\r' || a == '\n') //se for algum tipo de espaço saida=true; else saida=false; return saida; } void texto(){ //variáveis char entrada; unsigned numero_letras=0,numero_numeros=0,numero_outros=0,numero_espacos; ofstream esc; esc.open("saida.txt"); //Texto inicial cout << "Escreve, para parar *" << endl; do{ entrada = (char) cin.get(); //Para recolher espaços esc << entrada; if (e_letra(entrada)) //Se for letra, adiciona uma na variavel letra numero_letras++; else if (e_numero(entrada)) //Se não for letra e se for numero adc uma a variavel num numero_numeros++; else if (e_espaco(entrada)) numero_espacos++; else //Se não for nenhuma das anteriores é caracter especial numero_outros++; } while(entrada!='*'); // repetir até chegar o caracter * esc.close(); cout << "Saiu porcausa que escrever o caracter '*', e esse foi ignorado" << endl; //Mensagem de aviso cout << numero_letras << " letra" << (numero_letras!=1 ? "s":"") << endl; cout << numero_numeros << " numero" << (numero_numeros!=1 ? "s":"") << endl; cout << numero_espacos << " espaço" << (numero_espacos!=1 ? "s":"") << endl; cout << numero_outros << " outro" << (numero_outros!=1 ? "s":"") << " caracter" << (numero_outros!=1 ? "es":"") << endl; } int main() { texto(); return 0; }
  25. Eu estou interessado em aprender a programar, mas sem nenhum conhecimento, procurei algumas linguagens e as que mais gostei foram: C(tenho um livro, se for importante),C++ ,C#, Python e Java. A minha questão é, destas cinco linguagens, qual será melhor para desenvolver programas úteis?