Calcular ritmo de corrida de rua
Pode ser utilizado para calcular o ritmo de corrida de rua de vários atletas de uma equipe. No mundo das corridas de rua, esse ritmo é dado em "min, seg / km".
Por: Edson G. de Lima
Crivo de Eratóstenes Simples em Fortran 95
Para compilar, use: "gfortran sieve001.f95 -o sieve001", igual GNU Pascal e GCC Particularidades desta linguagem: - Início e fim de blocos demarcados por palavras, lembrando Pascal; - Cláusula "Program" ao início do programa semelhante a Pascal; - Declaração de variáveis no início do código, como em Pascal. - Arrays podem ser bem flexíveis ao serem dimensionados; - Usam-se parêntesis para determinar elementos de um array; - A simples declaração "LISTAGEM(:)=12345" preenche todos os elementos do array LISTAGEM com o mesmo valor. - Cláusula de fim de blocos terminam geralmente com a seguinte estrutura: "END" + "Comando titular do bloco" + "Identificador criador pelo programador". Exemplos: END DO, END IF, END PROGRAM XXXXXXX, END FUNCTION XXXXXXX; - Comentários são declarados após um ponto de exclamação; - Operadores lógicos são identificados por palavras abreviadas entre pontos (.OP.). Exemplos: .AND. .OR. .NOT. Provavelmente foi daí que veio .AND., .T. .F. do Dbase, Clipper etc.; - Originalmente "maior que (>)", "menor que (<)", "maior ou igual que (>=)", "menor ou igual que (<=)" etc em Fortran escreviam-se igual ao que se usa hoje em Bash Script ou no comando test: * Maior que: .GT. (Greater Than). Em Bash: -gt * Menor que: .GT. (Less Than). Em Bash: -lt * Maior ou igual que:: .GE. (Greater or Equal Than). Em Bash: -ge * Menor ou igual que:: .LE. (Less or Equal Than). Em Bash: -ge * Igual a: .EQ. (Equal). Em Bash -eq * Diferente de: .NE. (Not Equal). Em Bash -ne Usados dentro de colchetes em scripts em comandos "if/elif" e "while", por exemplo. - Atualmente os operadores simbólicos consagrados do tipo ">" para a omparação "maior que" podem ser usados em lugar das letras e pontos. No script fica como exemplificado. - Formatação de entrada/saída de strings e números, são mais complicadas que em C. São feitas com uma variável de string pré-declarada ou com um comando chamado "FORMAT", podendo até ter um número de linha de código (label) para identificá-lo. FORMAT lembra um comando chamado "PICTURE" do Clipper/XBase; - Impressão de término de linha ('\n' em C) no comando Write pode ser cancelada com a incomum declaração "Advance='no'"; - Cláusula "PARAMETER" pode definir constantes; - Strings são definidas por uma notação semelhante a uma multiplicação de um tipo de dado (Character) por um valor. Exemplo: Character*5. - Não existe operador para resto de divisão (módulo, sinal de porcentagem "%" em C), sendo necessário o uso de uma função já implementada na linguagem (não aparece neste código). - Não encontrei operador de auto-incremento semelhante ao "duplo mais" em C. Fortran não é lacônico, conciso e simbólico quanto C, porém pode ser tão poderoso quanto. Existem algumas facilidades sintáticas que não devem ser subestimadas.
Por: Perfil removido
Função Fatorial Recursiva em Fortran 95
A velha função fatorial, recursiva, em Fortran versão 95. Para compilar, use: "gfortran fatorial001.f95 -o fatorial001", igual GNU Pascal e GCC Durante a execução (após compilado), o programa pede um número de um intervalo pré-definido de 0 a J. Insistentemente, há um loop indefinido para isto. "J" deve ser no máximo até 20, já que o número definido por 21! (fatorial de 21) excede 2^63. O que há de diferente no código são as particularidades desta linguagem: - Blocos com início e fim definidos por palavras, lembrando Pascal; - Cláusula "Program" semelhante a Pascal; - Comentários vêm após um ponto de exclamação; - Operadores lógicos definidos por palavras entre pontos (.OP.). Provavelmente foi daí que veio .AND., .T. .F. do Dbase, Clipper etc.; - Máscaras de formatação com strings, algo mais complexas que C para formatação de entrada/saída de dados. Podem ser feitas com um comando chamado "FORMAT". De novo uma referência ao "PICTURE" do Clipper; - Necessidade de uma estranha expressão (Advance='no') para evitar avanço de linha; - Dimensionamento do tamanho do tipo de dados (KIND=8). Esta cláusula aumenta o inteiro para 64 bits. 8 é o valor máximo; - Cláusula "PARAMETER" para declarar constantes; - Funções e subrotinas devem estar num bloco determinado em uma áres definida pela cláusula "CONTAINS"; - Não foi usado algo como "RETURN" ao final, mas uma variável especificada para retorno do valor; - Variáveis de sequências de caracteres são definidas por uma coisa que "lembra" uma multiplicação de um tipo (Character) por um valor (Character*5). - Não existe operador para resto de divisão (módulo, sinal de porcentagem "%" em C), sendo necessário o uso de uma função já implementada na linguagem (não aparece neste código). A sintaxe de Fortran é ricamente cheia de recursos tanto quanto C. Infelizmente não tão lacônica e taquigráfica quanto. Seu código compilado com gfortran gerou um executável pequeno, mesmo sem usar "strip -s". É tão verborrágica quanto Pascal e até mais, lembrando também Clipper e COBOL.
Por: Perfil removido
Crivo de Eratóstenes Simples em Pascal
Esta implementação do Crivo de Erastótenes possui diretivas de pré-compilação que permitem que o código seja compilado por fpc (Free Pascal) ou gpc (GNU Pascal). Na prática é igual a um IF ... THEN ... sem usar BEGIN ... END e usando ENDIF. Sendo também que esta etapa ocorre como uma filtragem de código, antes deste ser compilado. No caso os compiladores consideram na compilação o código dentro de {$ifdef X} ... {$endif} somente se houver uma identificação de um símbolo (aqui chamado de X) no contexto Já {$ifndef X} ... {$endif} faz o contrário: compila se a definição do símbolo não for encontrada. A pré-definição "FPC" indica uso do compilador Free Pascal. A pré-definição __GPC_RELEASE__ indica uso do compilador GNU PASCAL. O código demarcado, portanto, só será usado conforme estes símbolos aparecerem {ifdef ...} ou não {ifndef ...}, isto é, conforme os compiladores utilizados. O nome dos tipos de dados numéricos para valores grandes é diferente nos dois compiladores e foi utilizada uma predefinição na área TYPE do código. Dentro desta área o código é selecionado em tempo de compilação conforme a diretiva. Mais abaixo também está outro par de compilações condicionais. A procedure Inc (...) parece não funcionar com valores não-ordinais ou inteiros no Free Pascal, portanto foi escolhido o incremento na forma-padrão como opção. Acredito que o uso de Inc (...) funcione do mesmo modo que a variável com "duplo mais" (V++) ou "mais igual" (V+=2) funcionam otimizados em C.
Por: Perfil removido
Crivo de Eratóstenes Simples em PHP
Não é muito comentado, mas pode-se fazer scripts que rodem direto do terminal para tarefas corriqueiras em PHP. Igual a Perl, Python e Shellscript. Como o objetivo desta linguagem é ser uma página dinâmica de web (ou CGI, mais raro), essa observação passa por desapercebido. Para rodar um script em PHP igual aos outros script, necessita-se de três coisas: 1ª Permissões de execução: "chmod +x ..." 2ª Colocar She-Bang na primeira linha: "#!/usr/bin/php" 3ª Todo o código deve estar entre as tags "". O que estiver fora das tags será impresso na tela sem ser interpretado. ================================================================= Este script tabula números primos. A contagem está marcada para o intervalo de 1 até 10000000 (dez milhões). Um script em Perl de código muito similar tabulou aqui os ńúmeros do intervalo de um a um milhão em quase quatro segundos. Este script fez o mesmo teste de um a um milhão em pouco menos de três, isto é um segundo a menos. Mas o que me chamou a atenção foi que o mesmo teste para ńúmeros do intervalo de um a dez milhões levou em Perl 1min 17seg (um minuto e desessete segundos). Este script aqui em "PHP de terminal" fez a mesma tabulação no intervalo de um a dez milhões em 57seg (cinquenta e sete segundos). Essa diferença de 20 segundos é muito significante para não ser notada. Se fosse em hardware mais antigo, seria uma eternidade. PHP mais rápido que Perl para ser usado em terminal?? Ainda é pouco para comparação. Falta testar acessos a recursos de sistema e ver até onde vai o poder de fogo de ambas as linguagens para tarefas similares. Desde CGI, administração de sistemas e uso em aplicativos... Pra variar, não sei se ainda pode ser melhorado, nem onde pode falhar. Aguardo por bugs.
Por: Perfil removido
Classe Java para conectar ao Mysql em um servidor remoto
Classe Java para conectar ao Mysql em um servidor remoto, necessita do driver JDBC, disponível no site mysql.com. Após adicioná-la ao projeto teste a conexão invocando o método para cria uma instancia da conexão. connMysql.getConnection(); Para saber o status: JOptionPane.showMessageDialog(null, connMysql.statusConection());
Por: Pedro Ferrarezi
Array de números aleatórios não-repetidos de um intervalo em Pascal
Este programa feito em Pascal preenche um array (vetor) de números inteiros de um intervalo dado (de 1 até VALOR) com valores inteiros aleatórios deste intervalo. Não sei como está agora, mas Pascal era primeira linguagem de cursos técnicos e universitários ao se ensinar algoritmos no 1º ciclo. Tinha ganho vida nova através do Object Pascal presente no Delphi. Que ultimamente não tenho visto muita coisa por aí... Ele consegue ser compilado com gpc (GNU Pascal) e fpc (Free Pascal). Há uma pequena "gambiarra" no código: Pelo menos foi assim que consegui fazer funcionar em ambos os compiladores. $ gpc alea001.pas -o alea001 # para usar gpc ou $ fpc alea001.pas # para usar fpc Ambos os compilados são enormes se comparado com o compilado em C. A vantagem de se usar gpc é que dá pra usar o gdb (GNU Debugger). Basta colocar a opção "-ggdb" no comando de compilação do gpc. Há também um debugger próprio do Free Pascal, mas o gdb é mais popular. Não tenho a menor ideia se funciona em Turbo Pascal, nem garantia no Dev-Pascal :-)
Por: Perfil removido
Estrutura de serviço
Eu queria usar um código de cronometro, funcionado como um serviço de telemóvel, com a estrutura mencionada, com alternativas: iniciar->"fazer uma chamada", e parar->"terminar chamada", da seguinte descrição: Efectuar chamada – Ao pressionar nesta opção será permitido ao utilizador registar uma chamada efectuada por um determinado cliente. Portanto será pedido ao utilizador o número de telemóvel do cliente, número de telemóvel de destino, duração da chamada e a data da chamada. O custo4 da chamada deve ser calculado, inserido e subtraído no saldo automaticamente(logo no contrato recebe 200). Lembre-se que uma chamada só pode ser efectuada caso o saldo do cliente for maior que 0 (zero) e que a duração oscila consoante o saldo e a tarifa do cliente. 2) Chamadas efectuadas – Ao pressionar nesta opção o utilizador deverá introduzir o número de telemóvel de um determinado cliente, de seguida deve ser perguntado ao utilizador se pretende listar todas os registos (pressionando a letra S) ou se pretende filtrar a listagem por data (pressionando a letra F). Neste ultimo caso (F) será ainda pedido ao utilizador que introduza uma data a que pretende filtrar as chamadas, em seguida serão apresentadas no ecrã todas as chamadas efectuadas nesta data. No final da listagem dever ser apresentado a duração total e o custo total das chamadas. 3) Chamadas recebidas – Ao pressionar nesta opção o utilizador deverá introduzir o número de telemóvel de um determinado cliente, de seguida deve ser perguntado ao utilizador se pretende listar todas os registos (pressionando a letra S) ou se pretende filtrar a listagem por data (pressionando a letra F). Neste ultimo caso (F) será ainda pedido ao utilizador que introduza uma data a que pretende filtrar as chamadas, em seguida serão apresentadas no ecrã todas as chamadas efectuadas nesta data. No final da listagem dever ser apresentado a duração total das chamadas. 1 Operadoras: cvkovel e tmenos. 2 Este número é único para cada cliente. 3 (Tarifa cvkovel: grilo, segundo, powa) (Tarifa tmenos: clássico, gold, jovem) 4 (cvkovel: grilo: 25$00/mn, segundo: 0$40/s, powa: 30$00) (tmenos: clássico: 23$00/mn, gold: 1$00/s, jovem: 0$20/s)
Por: Kevin
Gentoo binário em 2026: UEFI, LUKS, Btrfs e Systemd
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Instalando fontes via script no Nautilus Scripts no Gnome do Debian 13
Substituindo o NetworkManager pelo iwd (e iwgtk)
Instalar Linux em notebook Sony Vaio VPCEG13EB (2)
GLPI Não atualiza Inventario (0)









