Jump to content

Search the Community

Showing results for tags 'pascal'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento e Banco de Dados
    • HTML e CSS
    • Java
    • Javascript
    • .NET
    • PHP
    • Python
    • Ruby
    • Mobile
    • Ambientes de Desenvolvimento
    • Arquitetura e Métodos Ágeis
    • Banco de Dados
    • DevOps
    • Desenvolvimento de Games
    • E-Commerce e Pagamentos Online
    • SEO e Otimizações
    • WordPress
    • Algoritmos & Outras Tecnologias
  • Design e Produto
    • Fotografia
    • Photoshop
    • Design de interfaces e UX
    • Edição/Produção de Vídeos
    • Marketing Online
    • Desenho, Ilustração e 3D
  • Entretenimento e uso pessoal
    • Geral
    • Segurança & Malwares
    • Gadgets e wearable
    • Softwares e Apps
    • Entretenimento

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Found 20 results

  1. FILIPEINFORMATICA10

    Como passar esse código do pascal para o PHP

    uses Crt; var X, Y : Integer; begin Writeln ('Entre com dois Números:'); { Mostra na tela a mensagem} Readln (X, Y); { Lê os dois números } If (X = Y) Then {Condição - SE X for igual a Y} Begin {INICIO - Repare abaixo que existe duas instruções, dois comandos Writeln, por isso estão entre BEGIN e END} Writeln ('X é igual que Y'); Writeln ('O Valor de X é =', X); End; {FIM} end.
  2. flavionorvel

    Converter linguagem C para visualg

    #include <stdio.h> #include <stdlib.h> // Limites de tamanhos #define MINIMO 2 #define MAXIMO 50 // Variáveis globais int opcao = 0; int linhas = MAXIMO; int colunas = MAXIMO; int matrizA[MAXIMO][MAXIMO]; int matrizB[MAXIMO][MAXIMO]; void limpar_tela(); // Retorna resposta do usuario se quer rodar novamente int rodar_novamente() { int opcao = 0; printf("\n\nDeseja rodar novamente? Digite 1 para SIM e 0 para Não: "); scanf("%d",&opcao); if (opcao == 1 || opcao == 0) { return opcao; } printf("\nOpcao invalida. Escolha novamente."); return rodar_novamente(); } // Recebe valor inteiro do usuario int receber_numero() { int numero = 0; scanf("%d",&numero); if (numero >0) { return numero; } printf("\nNúmero inválido. digite um número positivo.: "); return receber_numero(); } // Valida tamanhos de linhas e colunas int validar_tamanhos(int linhas, int colunas) { if ((linhas >= MINIMO && linhas <= MAXIMO) && (colunas >= MINIMO && colunas <= MAXIMO) && (linhas ! = colunas)) { return 1; } printf("\nLinhas e Colunas devem ser diferentes e ter valores entre %d e %d. Tente novamente.",MINIMO,MAXIMO); return 0; } // Preencher matriz void preencher_matriz(int matriz[MAXIMO][MAXIMO], int linhas, int colunas) { int i,j; for (i = 0 ; i < linhas ; i ++) { for (j = 0 ; j < colunas ; j ++) { printf("\nDigite um valor inteiro para a posicao %d-%d da matriz A: ",i,j); matriz[j] = receber_numero(); } } } // Imprimir matrizes void imprimir_matrizes(int matrizA[MAXIMO][MAXIMO], int matrizB[MAXIMO][MAXIMO], int linhas, int colunas) { int i,j; limpar_tela(); printf("\n\nMATRIZ A\n"); for (i = 0 ; i < linhas ; i++) { for (j = 0 ; j < colunas ; j ++) { printf("\nMATRIZ A POSICAO %d-%d: %d",i,j,matrizA[j]); } } printf("\n\nMATRIZ B (TRANSPOSTA DE A)\n"); for (i = 0 ; i < colunas ; i++) { for (j = 0 ; j < linhas ; j ++) { printf("\nMATRIZ B POSICAO %d-%d: %d",i,j,matrizB[j]); } } } void limpar_tela() { system("@cls||clear"); } // Laço principal int main() { int i,j; do { //Inicializar variáveis opcao = 0; linhas = 0; colunas = 0; i = 0; j = 0; do { printf("\nEntre com o tamanho para linhas: "); linhas = receber_numero(); printf("\nEntre com o tamanho para colunas: "); colunas = receber_numero(); } while (!validar_tamanhos(linhas,colunas)); // entrar com valores para a matriz A preencher_matriz(matrizA, linhas, colunas); // criar matriz transposta de A for(i = 0 ; i < linhas ; i ++) { for(j = 0 ; j < colunas ;j ++) { matrizB[j] = matrizA[j]; } } // Imprimir matrizes imprimir_matrizes(matrizA,matrizB,linhas, colunas); // Pergunta ao usuário se quer continuar opcao = rodar_novamente(); } while (opcao == 1); }me
  3. Boa noite/dia gente. Preciso de ajuda aqui. Tenho um exercício no qual tenho de fazer um programa em pascal com o seguinte enunciado: Considere a soma S dos termo da série infinita apresentada abaixo: Fazer um programa em Free Pascal que calcule o valor aproximado da soma S dos termos da série até o momento em que a diferença das normas (módulo) de 2 termos consecutivos for menor que 0,000001 ({i.e.}, norma da diferença das normas de dois termos consecutivos). Segue meu algoritmos/programa: program calcserie; var soma, a1, a2, an : real; sinal : longint; cont, n, fat : integer; begin n := 0; a1 := 1; a2 := 0; soma := 0; cont := 1; fat := 1; an := 1; sinal := 1; while (an) > 0.000001 do begin n := n + 2; while cont <= n do begin fat := fat * cont; cont := cont + 1; end; soma := (soma + (a1 * sinal)); sinal := sinal * -1; a2 := a1; a1 := ((1/fat)); if (a2 < 0) then an := (a2 * -1) - a1 else if (a1 < 0) then an := (a2) - (a1 * -1); end; write (soma:0:15); end. Meu erro está sendo a partir da 3 casa decimal
  4. Boa noite meu problema é '$' que sempre da na ultima linha esta ai o codigo Program Pzim ; var nome:string; sangue:string; idade:integer; Begin writeln('Escreva seu nome aqui '); read(nome); writeln('Digite sua idade '); read(idade); writeln('Digite seu tipo sanguineo '); read(sangue); if sangue=Apositivo then write('Você ',nome,'tem); End.
  5. Hatepascal

    PascalAlgotitmo

    program divisao; /*ME AJUDEM POR FAVOR, ESTOU FICANDO LOUCO! Questão: faça uma calculadora onde o usuario entre com 2 numeros e secolha a operacao desejada, multiplicao ou divisao. voce devera mostrar o resultado e depois perguntar se ele deseja realizar a operacao novamente. sei que isso usa o comando while,porem nao estou conseguindo entender a logica,pelo que parece algem resolve para mim? grato. */ var m,d, n1, n2: real; continuar :string; escolha:char; begin d := 0; m :=0; continuar := 'sim' ; while continuar = 'sim' do Begin writeln('digite o primeiro numero: '); readln(n1); writeln('digite o segundo numero'); readln(n2); WriteLn('escreva d para divisao ou m para multiplicacao'); readln(escolha); if escolha = 'm' then begin m := n1 * n2; end; if escolha = 'd' then begin d := n1 / n2; end; write('resultado multiplicação : '); writeln(m); write('resultado divisão : '); writeln(d); writeln('deseja continuar , sim? '); readln; end; end.
  6. Temóteo Francisco

    Algoritmo_pascal

    Alguém resolve aí pra mim pq eu fiz exatamente o que tava no livro e mesmo assim o código não segue;ele para quando termino de enviar os dados pra recebimento,por favor me ajudem ! program patrao; var Aumento,sal,SN:real; No:string ; Idade,AT,P:Integer ; begin WriteLn('Digite sua idade'); readln(Idade); WriteLn('quantos anos trabalhados? '); ReadLn(AT); WriteLn('Qual o valor do seu salário? '); ReadLn(sal); case Idade of 0..25: begin case AT of 0..3: P:= 5; 4..6: P:= 10; else P:= 15; end; end; 26..35: begin case AT of 0..9: P:= 20; 10..15: P:= 25; else P:= 30; End; end; else begin case AT of 0..10: P:= 30; 11..20: P:= 40; 21..30: P:= 50; 31..40: P:= 60; else begin P:= 70; end; end; end; Aumento:= (P/100)*sal; SN:=sal + Aumento; WriteLn('seu antigo salario era de R$:',sal); Writeln('a porcentagem de aumento recebida foi de: ',Aumento:1:1,'%'); writeln('seu novo salario e de R$:',SN); readln; end; end.
  7. Temóteo Francisco

    Lógica de programação em pascal

    /*Alguém me ajuda na seguinte questão por favor!! Eu sou iniciante e não to entendendo já faz 4hs que tô tentando isso até tentei fazer com o comando case e não deu certo,me ajudem caras !! eu so tenho meu android pra codar nem pc eu tenho kkkk fiz isso no app:pascal-N IDE(se e que pode falar marca aqui) faça um algoritmo que receba o número de horas trabalhadas por um funcionário, o serviço que ele fez,e calcule o valor a ser pago a esse funcionário, onde o valor pago e o número de horas * valor do serviço. Os valores das horas dos serviços seguem na primeira tabela, porém, dependendo do número de horas trabalhadas, esse funcionário terá uma porcentagem de aumento de acordo com a segunda tabela: (tabela na imagem) sou iniciante e fiz assim:*/ program aumento_horra; var s,resultado:real; nh: Integer; begin WriteLn('digite o numero de horas trabalhadas'); ReadLn(nh); WriteLn('qual o serviço feito? A,B ou C ?'); ReadLn(s); if s = 'A' then begin resultado:=10*nh; if nh := 0..10 then nh=true begin WriteLn('total a pagar R$:',nh,'Sem aumento'); end; end else if nh:=11..15 then begin resultado:=10*nh+(25/100); end else if nh:=16..25 then begin reaultado:=10*nh+(35/100); end else if nh < 26 then begin resultado:=10*nh+(45/100); end; end; f s = 'B' then begin resultado:=20*nh; else if nh := 0..10 then nh=true begin WriteLn('total a pagar R$:',nh,'Sem aumento'); end; else if nh:=11..15 then begin resultado:=20*nh+(25/100); end else if nh:=16..25 then begin reaultado:=20*nh+(35/100); end else if nh < 26 then begin resultado:=20*nh+(45/100); end; end; f s = 'C' then begin resultado:=10*nh; else if nh:=0..10 then nh=true begin WriteLn('total a pagar R$:',nh,'Sem aumento'); end; else if nh:=11..15 then begin resultado:=30*nh+(25/100); end else if nh:=16..25 then begin reaultado:=30*nh+(35/100); end else if nh < 26 then begin resultado:=30*nh+(45/100); end; end; writeln('o valor a ser pago e: ',resultado); writeln('Obrigado por trabalhar conosco'); readln; end.
  8. Temóteo Francisco

    Lógica de programação em pascal

    /*Alguém me ajuda na seguinte questão por favor!! Eu sou iniciante e não to entendendo já faz 4hs que tô tentando isso até tentei fazer com o comando case e não deu certo,me ajudem caras !! eu so tenho meu android pra codar nem pc eu tenho kkkk fiz isso no app:pascal-N IDE(se e que pode falar marca aqui) faça um algoritmo que receba o número de horas trabalhadas por um funcionário, o serviço que ele fez,e calcule o valor a ser pago a esse funcionário, onde o valor pago e o número de horas * valor do serviço. Os valores das horas dos serviços seguem na primeira tabela, porém, dependendo do número de horas trabalhadas, esse funcionário terá uma porcentagem de aumento de acordo com a segunda tabela: (tabela na imagem) sou iniciante e fiz assim:*/ program aumento_horra; var s,resultado:real; nh: Integer; begin WriteLn('digite o numero de horas trabalhadas'); ReadLn(nh); WriteLn('qual o serviço feito? A,B ou C ?'); ReadLn(s); if s = 'A' then begin resultado:=10*nh; if nh := 0..10 then nh=true begin WriteLn('total a pagar R$:',nh,'Sem aumento'); end; end else if nh:=11..15 then begin resultado:=10*nh+(25/100); end else if nh:=16..25 then begin reaultado:=10*nh+(35/100); end else if nh < 26 then begin resultado:=10*nh+(45/100); end; end; f s = 'B' then begin resultado:=20*nh; else if nh := 0..10 then nh=true begin WriteLn('total a pagar R$:',nh,'Sem aumento'); end; else if nh:=11..15 then begin resultado:=20*nh+(25/100); end else if nh:=16..25 then begin reaultado:=20*nh+(35/100); end else if nh < 26 then begin resultado:=20*nh+(45/100); end; end; f s = 'C' then begin resultado:=10*nh; else if nh:=0..10 then nh=true begin WriteLn('total a pagar R$:',nh,'Sem aumento'); end; else if nh:=11..15 then begin resultado:=30*nh+(25/100); end else if nh:=16..25 then begin reaultado:=30*nh+(35/100); end else if nh < 26 then begin resultado:=30*nh+(45/100); end; end; writeln('o valor a ser pago e: ',resultado); writeln('Obrigado por trabalhar conosco'); readln; end.
  9. Temóteo Francisco

    Lógica de programação em pascal

    /*Alguém me ajuda na seguinte questão por favor!! Eu sou iniciante e não to entendendo já faz 4hs que tô tentando isso até tentei fazer com o comando case e não deu certo,me ajudem caras !! eu so tenho meu android pra codar nem pc eu tenho kkkk fiz isso no app:pascal-N IDE(se e que pode falar marca aqui) faça um algoritmo que receba o número de horas trabalhadas por um funcionário, o serviço que ele fez,e calcule o valor a ser pago a esse funcionário, onde o valor pago e o número de horas * valor do serviço. Os valores das horas dos serviços seguem na primeira tabela, porém, dependendo do número de horas trabalhadas, esse funcionário terá uma porcentagem de aumento de acordo com a segunda tabela: (tabela na imagem) sou iniciante e fiz assim:*/ program aumento_horra; var s,resultado:real; nh: Integer; begin WriteLn('digite o numero de horas trabalhadas'); ReadLn(nh); WriteLn('qual o serviço feito? A,B ou C ?'); ReadLn(s); if s = 'A' then begin resultado:=10*nh; if nh := 0..10 then nh=true begin WriteLn('total a pagar R$:',nh,'Sem aumento'); end; end else if nh:=11..15 then begin resultado:=10*nh+(25/100); end else if nh:=16..25 then begin reaultado:=10*nh+(35/100); end else if nh < 26 then begin resultado:=10*nh+(45/100); end; end; f s = 'B' then begin resultado:=20*nh; else if nh := 0..10 then nh=true begin WriteLn('total a pagar R$:',nh,'Sem aumento'); end; else if nh:=11..15 then begin resultado:=20*nh+(25/100); end else if nh:=16..25 then begin reaultado:=20*nh+(35/100); end else if nh < 26 then begin resultado:=20*nh+(45/100); end; end; f s = 'C' then begin resultado:=10*nh; else if nh:=0..10 then nh=true begin WriteLn('total a pagar R$:',nh,'Sem aumento'); end; else if nh:=11..15 then begin resultado:=30*nh+(25/100); end else if nh:=16..25 then begin reaultado:=30*nh+(35/100); end else if nh < 26 then begin resultado:=30*nh+(45/100); end; end; writeln('o valor a ser pago e: ',resultado); writeln('Obrigado por trabalhar conosco'); readln; end.
  10. Temóteo Francisco

    Lógica de programação em pascal

    /*Alguém me ajuda na seguinte questão por favor!! Eu sou iniciante e não to entendendo já faz 4hs que tô tentando isso até tentei fazer com o comando case e não deu certo,me ajudem caras !! eu so tenho meu android pra codar nem pc eu tenho kkkk fiz isso no app:pascal-N IDE(se e que pode falar marca aqui) faça um algoritmo que receba o número de horas trabalhadas por um funcionário, o serviço que ele fez,e calcule o valor a ser pago a esse funcionário, onde o valor pago e o número de horas * valor do serviço. Os valores das horas dos serviços seguem na primeira tabela, porém, dependendo do número de horas trabalhadas, esse funcionário terá uma porcentagem de aumento de acordo com a segunda tabela: (tabela na imagem) sou iniciante e fiz assim:*/ program aumento_horra; var s,resultado:real; nh: Integer; begin WriteLn('digite o numero de horas trabalhadas'); ReadLn(nh); WriteLn('qual o serviço feito? A,B ou C ?'); ReadLn(s); if s = 'A' then begin resultado:=10*nh; if nh := 0..10 then nh=true begin WriteLn('total a pagar R$:',nh,'Sem aumento'); end; end else if nh:=11..15 then begin resultado:=10*nh+(25/100); end else if nh:=16..25 then begin reaultado:=10*nh+(35/100); end else if nh < 26 then begin resultado:=10*nh+(45/100); end; end; f s = 'B' then begin resultado:=20*nh; else if nh := 0..10 then nh=true begin WriteLn('total a pagar R$:',nh,'Sem aumento'); end; else if nh:=11..15 then begin resultado:=20*nh+(25/100); end else if nh:=16..25 then begin reaultado:=20*nh+(35/100); end else if nh < 26 then begin resultado:=20*nh+(45/100); end; end; f s = 'C' then begin resultado:=10*nh; else if nh:=0..10 then nh=true begin WriteLn('total a pagar R$:',nh,'Sem aumento'); end; else if nh:=11..15 then begin resultado:=30*nh+(25/100); end else if nh:=16..25 then begin reaultado:=30*nh+(35/100); end else if nh < 26 then begin resultado:=30*nh+(45/100); end; end; writeln('o valor a ser pago e: ',resultado); writeln('Obrigado por trabalhar conosco'); readln; end.
  11. Temóteo Francisco

    Lógica de programação em pascal

    /*Alguém me ajuda na seguinte questão por favor!! Eu sou iniciante e não to entendendo já faz 4hs que tô tentando isso até tentei fazer com o comando case e não deu certo,me ajudem caras !! eu so tenho meu android pra codar nem pc eu tenho kkkk fiz isso no app:pascal-N IDE(se e que pode falar marca aqui) faça um algoritmo que receba o número de horas trabalhadas por um funcionário, o serviço que ele fez,e calcule o valor a ser pago a esse funcionário, onde o valor pago e o número de horas * valor do serviço. Os valores das horas dos serviços seguem na primeira tabela, porém, dependendo do número de horas trabalhadas, esse funcionário terá uma porcentagem de aumento de acordo com a segunda tabela: (tabela na imagem) sou iniciante e fiz assim:*/ program aumento_horra; var s,resultado:real; nh: Integer; begin WriteLn('digite o numero de horas trabalhadas'); ReadLn(nh); WriteLn('qual o serviço feito? A,B ou C ?'); ReadLn(s); if s = 'A' then begin resultado:=10*nh; if nh := 0..10 then nh=true begin WriteLn('total a pagar R$:',nh,'Sem aumento'); end; end else if nh:=11..15 then begin resultado:=10*nh+(25/100); end else if nh:=16..25 then begin reaultado:=10*nh+(35/100); end else if nh < 26 then begin resultado:=10*nh+(45/100); end; end; f s = 'B' then begin resultado:=20*nh; else if nh := 0..10 then nh=true begin WriteLn('total a pagar R$:',nh,'Sem aumento'); end; else if nh:=11..15 then begin resultado:=20*nh+(25/100); end else if nh:=16..25 then begin reaultado:=20*nh+(35/100); end else if nh < 26 then begin resultado:=20*nh+(45/100); end; end; f s = 'C' then begin resultado:=10*nh; else if nh:=0..10 then nh=true begin WriteLn('total a pagar R$:',nh,'Sem aumento'); end; else if nh:=11..15 then begin resultado:=30*nh+(25/100); end else if nh:=16..25 then begin reaultado:=30*nh+(35/100); end else if nh < 26 then begin resultado:=30*nh+(45/100); end; end; writeln('o valor a ser pago e: ',resultado); writeln('Obrigado por trabalhar conosco'); readln; end.
  12. Estou cursando ciências da computação,1 período a matéria mais pesada pra mim esta sendo Programação.. enfim o Professor lançou um desafio gostaria de pedir ajuda alguém que tenha mais experiencia:seguinte desafio> Faça um programa na linguagem pascal que leia informações de 50 pessoas,cada uma delas,altura e o sexo da pessoa para(masculino 1,feminino 2)calcule e mostre o seguinte: A maior e a menor altura media das mulheres maior e menor altura dos homens Media do conjunto de 50 e fim...
  13. 1) Sabe-se que o quilowatt de energia custa 0,05% do valor do salário mínimo (R$ 1000) e o consumo (kW) dessa residência ao longo do ano foi: Janeiro 150 Fevereiro 52 Março 45 Abril 28 Maio 65 Junho 87 Julho 12 Agosto 100 Setembro 120 Outubro 45 Novembro 67 Dezembro 230 Sabe-se, que se o valor consumido for maior que 60 kW, deve ser aplicada uma taxa extra (bandeira amarela) igual a 2% do valor da conta, e se for maior que 100 kW, deve ser aplicada mais uma taxa (bandeira vermelha) igual a 5% do valor da conta (antes da bandeira amarela). Essas taxas devem ser somadas ao valor total da conta. Faça um programa que calcule e mostre a. o valor a ser pago por essa residência a cada mês; b. Se no mês de dezembro o consumo médio foi menor que 85 quilowatts, então deve ser dado um desconto de natal de 50% nesse mês;
  14. 1. Uma sorveteria vende 5 produtos diferentes, cada um com um preço, de acordo com a tabela abaixo: Código Produto Preço (R$) A refrigerante 0,60 B casquinha simples 1,00 C casquinha dupla 1,20 D sundae 1,50 E banana split 2,00 Faça um programa que processe diversas vendas. O programa deverá apresentar um menu indicando os preços dos produtos. Cada venda efetuada pode ser composta por diversas unidades de diversos produtos. Os produtos são identificados através de seus códigos. A cada venda efetuada informar o preço a pagar. No final do dia o programa deverá emitir um relatório com as seguintes informações: a) número total de itens vendidos em cada produto; b) total pago para cada produto; c) total arrecadado (somando todos os produtos); e d) média de valor pago por pedido. O que eu consegui fazer foi: Program sorveteria; var cod,resp:string; vendas,total_itens,total_vendido,total_pago,arrecadado,media,quanta,quantb,quantc,quantd,quante,ta,tb,tc,td,te:real; Begin while resp='s' do vendas:=vendas+1; writeln('A-refrigerante------0,60'); writeln('B-casquinhasimples--1,00'); writeln('C-casquinha dupla---1,20'); writeln('D-sundae------------1,50'); writeln('E-banana split------2,00'); writeln('Informe a quantidade de produtos A comprados:'); readln(quanta); ta:=quanta*0.60; writeln('Informe a quantidade de produtos B comprados:'); readln(quantb); tb:=quantb*1; writeln('Informe a quantidade de produtos C comprados:'); readln(quantc); tc:=quantc*1.20; writeln('Informe a quantidade de produtos D comprados:'); readln(quantd); td:=quantd*2; writeln('Informe a quantidade de produtos E comprados:'); readln(quante); tb:=quante*1; writeln('Valor pago por produto:','A', ta:2:2); writeln('Valor pago por produto:','B', tb:2:2); writeln('Valor pago por produto:','C', tc:2:2); writeln('Valor pago por produto:','D', td:2:2); writeln('Valor pago por produto:','E', te:2:2); writeln('Total vendido de cada item:','A:',quanta:0:0); writeln('Total vendido de cada item:','B:',quantb:0:0); writeln('Total vendido de cada item:','C:',quantc:0:0); writeln('Total vendido de cada item:','D:',quantd:0:0); writeln('Total vendido de cada item:','E:',quante:0:0); arrecadado:=(ta+tb+tc+td+te); writeln('O total arrecadado é:',arrecadado:2:2); writeln('Vendas:',vendas); writeln('Mais uma venda?'); readln(resp); readkey; End.
  15. program Impar; var Soma, Cont: Integer; begin Soma := 0; for Cont := 1 to 100 do begin if Cont mod 2 <> 0 then begin Soma := Soma + Cont; end ; end; Writeln('A soma dos numeros impares de 1 a 100 e:',Soma); readln; end. opa galera queria saber se esse meu algoritmo para saber a somatório de números ímpares entre 1 até 100 está certo muito obrigado (a) pela atenção
  16. Boa noite! Esse é meu primeiro post então me desculpem se postei no lugar errado. Estou com um pequeno problema para resolver um problema de programação pascal envolvendo matrizes e vetores. O problema é o seguinte: 1. Desenvolver um procedimento que escreva uma matriz 3x3. 2. Utilizando a solução do exercício 1, armazene a diagonal principal da matriz em um vetor e depois escreva os valores armazenados nesse vetor. Esses foi o mais próximo que consegui chegar, o problema 1 eu fiz mais o 2 to empacado. procedure Trabalho01 (); Var Mat : array [1..3] of array [1..3] of integer; Vet : array [1..3] of integer; Linha, Coluna, Valor : Integer; Begin Valor := 0; For Linha := 1 to 3 do Begin For Coluna :=1 to 3 do Begin Valor := Valor + 2; Mat[Linha][Coluna] := Valor; End; End; If Linha = Coluna then Begin Vet[1] := Mat Vet[2] := Mat Vet[3] := Mat escr(IntToStr(Vet[Mat]); End; End; Minha duvida é a seguinte. Eu preciso usar If ? Da maneira que estou usando ele dará todos os valores no qual linha = coluna, isso me daria mais dados do que preciso. Como eu posso filtrar para que me dê as posições [1,1] [2,2][3,3] ?
  17. Boa Noite, sou novo nessa área de programação, pois só comecei a estudar agora na faculdade e literalmente não entendo nada. O prof passou trabalho em pascal, para dizer se o numero inserido é primo (Falso ou Verdadeiro). Esse é o mais próximo que consegui chegar, mas eu coloco outros números ele ta afirmando que é primo sendo que não é. function Primo ( n : Integer) : boolean; Var F: integer; Begin for F:=2 to n-1 do begin If n mod F = 0 then result:= false else begin result:= true end; end end;
  18. Eaew galerinha. Tenho uma dúvida sobre o modo como se usa o comando INSERT dentro de um banco de dados (já que estou aprendendo SQL sozinho e os tutoriais que achei não me clarearam as ideias), leitura até agora foi Use a cabeça SQL e a sensação de ter gasto grana a toa, já que aulas do youtube ensinam uns 85%+ do livro =/ . Estou fazendo um programa em Lazarus (programa estilo Delphi) e ele é basicamente um punhado de inserções e leituras dentro do banco de dados, porém meu banco de dados tem tabelas relacionadas 1 para 1, 1 para muitos e muitos para muitos e estou em dúvida como faço o SQL do INSERT de forma correta (estou checando o rascunho que tinha feito do db para ver se ele está em 3FN e dentro dos padrões do ACID). Segue um exemplo aproximado da estrutura que tenho: tbl_usuario (ID INT NOT NULL PK, nome, sexo, datanascimento, estadocivil, endereço FK (endereço id), cidade FK (cidade id), estado FK (estado id)); tbl_endereço (ID INT NOT NULL PK, endereco); tbl_cidade (ID INT NOT NULL PK, estado_id PK (estado id), nome_cidade); tbl_estado (ID INT NOT NULL PK, estado_uf, estado_nome); tbl_telefones (ID INT NOT NULL PK, id_usuario FK (usuario id), numero); tbl_interesses (ID INT NOT NULL PK, id_usuario FK (usuario id), interesse); tbl_interesses_usuarios (ID INT NOT NULL PK, id_usuario FK (usuario id), id_interesses FK (interesses id)); Gostaria de saber se no caso de interesses onde eu vou ter uma duplicidade de registros do id do usuário eu devo ou não criar uma referencia através de uma FK dentro de uma tabela que sirva como ponte (como no exemplo) ou se as consultas do tipo join ou multiplos selects ou a clausula WHERE dão conta disso, sei que existe uma estrutura por trás da FK para manter integridade de dados (mas não entendi o que isso significa na prática, já que posso deixar tanto ids PK quanto FKs vazias), sei que existem tabelas que servem como pontes para isso, mas essa tabela não faz muito sentido para mim em casos como endereço, cidade, já que utilizar uma tabela para armazenar 4 valores ao invés de adicionar 3 na tabela principal me parece redundância, partindo do principio que é um campo NOT NULL. Se não me falha a memória um SELECT u.nome, u.datanascimento, i.interesses FROM usuarios AS u, interesses AS i WHERE u.id = i.id_usuario ou $valor; funciona tanto quanto um NATURAL JOIN ou INNER quando escrito certo. Também gostaria de saber qual o processo correto do INSERT dentro das tabelas, até o momento tenho o seguinte conhecimento para cadastrar valores na tbl_usuario depois de realizar algumas buscas por aí: START TRANSACTION; INSERT INTO tbl_usuario (nome, sexo, datanascimento, estadocivil, endereco, cidade, estado) VALUES ('Tina', 'F', '10-10-1989', 10, 9, 1, 'S'); SELECT LAST_INSERT_ID() INTO @ID; INSERT INTO telefones (id_usuario, numero) VALUES (@ID, '(+5555) 55555-5555'); INSERT INTO telefones (id_usuario, numero) VALUES (@ID, '(+5555) 44444-4444'); Minha dúvida começa nesse ponto, no caso de inserir os valores do id_usuario e id_interesses via linguagem fica até claro o método já que posso criar objetos que exibem mascaras e gravam KEY FIELDS, como exibir 'Passear' e escrever 177 na DB além de tirar o INTO @ID e usar o AS ID para extrair o conteúdo como um parâmetro e armazenar em uma variável. Mas no caso da tabela que serve ponte como eu faria uma inserção nela sendo que existe um N telefones para 1 usuário, quando realizar isso via SQL eu teria de fazer um SELECT dentro da tabela de telefones para buscar a ID do número e cadastrar na tabela ponte ou existe um jeito mais fácil? No caso da linguagem seria criar outra variável para armazenar os outros ids necessários e ir distribuindo ao longo do próximo INSERT da lista? COMMIT; Mas e se eu precisar por exemplo criar uma FK do telefone dentro da tbl_usuario que não possa ser preenchida de inicio já que a tabela de telefones e interesses são muitos para 1, neste caso eu teria de fazer um SELECT da id do telefone e usar o UPDATE pra atualiar o campo? Pergunto isso porque na divisão final da tabela usuŕio fiquei com várias tabelas com esse tipo de relacionamento, como sou novo nisso gostaria de opinião dos experientes, e já que não tive (não tenho acesso) a um professor formado que saiba responder isso (onde moro até achar um professor de informática básica que saiba o que faz é EXTREMAMENTE difícil, já que moro no interior). Agradeço a ajuda e peço desculpas pela confusão do texto, sono e prolixidade são nisso.
  19. tá dando erro na ultima linha mas não sei porque program Equacao2Grau; uses Crt; { Autor(a) : Dimas de Castro Filho} { Data atual : 09/10/2015} Var xraiz, x1, x2, delta, a, b, c, B2 :real; Numero:real; begin write(' Equação de Segundo Grau '); write(' 1-Ínicio '); write('2-Sair '); write('Digite o número da opção e pressione enter.'); textcolor(0); textbackground(15); readln(Numero); If Numero=1 then begin ClrScr; write('Digite o valor de ''A'': '); readln(a); write('Digite o valor de ''B'': '); readln( B); write('Digite o valor de ''C'': '); readln©; b2 := b*b; xraiz := ((4 * a) * c); delta := b2 - xraiz; if a = 0 then begin write('''A'' tem que ser diferente de (0)'); end else begin if delta > 0 then begin writeln('Existem duas raizes ''possíveis'' '); x1 := (-b+sqrt(delta)) / (2 * a ); x2 := (-b-sqrt(delta)) / (2 * a ); writeln('Delta: ', delta); writeln('A Primeira raiz X'': ', x1); writeln('A Segunda raiz X'''': ', x2); end else begin if delta = 0 then begin writeln('As Duas raizes são iguais '); x1 := (-b+sqrt(delta)) / (2 * a ); x2 := (-b-sqrt(delta)) / (2 * a ); writeln('Delta: ', delta); writeln('A Primeira raiz X'': ', x1); writeln('A Segunda raiz X'''': ', x2); end else begin if delta < 0 then begin write('Não existe'); end else begin writeln('Fim') end; end.
  20. Fabio Aragao

    exercicio Pascal

    Boa noite pessoal, Fiz um exercicio mas fiquei pensando se não existe uma outra forma de fazer, ainda mais que a utilização do comando "break" não foi muito bem explicado Enunciado: ¡Faça um programa em Pascal que possua um vetor com 3 nomes armazenados: nomes[1] := ‘Jose’; nomes[2] := ‘Maria’; nomes[3] := ‘Carlos’; O programa deverá solicitar a digitação de um nome qualquer, e buscará o nome digitado no vetor de nomes. Caso encontre o nome, escreverá ‘Achei!’; Caso contrário, escreverá ‘Não achei’; Minha Solução: Program Exerc_4_slide ; var vet : array [1..3] of string; i : integer; nome , R: string; Begin for i := 1 to 3 do begin write( 'Digite o ', i , 'o. nome: ' ) ; read( vet[i] ) ; end; write( 'Digite o nome que voce quer procurar: ' ) ; read( nome ) ; for i := 1 to 3 do begin if ( nome = vet[i] ) then begin R := 'Achei!!!'; break; end else R := 'Não achei!!!'; end; write( R ) ; End.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.