Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Recommended Posts

Preciso fazer um algoritmo que leia notas e as ordene em forma crescente já fiz alguma coisa mais ainda tem alguns erros de sintaxe, queria pedir ajuda para concluir:

Algoritmo "Obter notas e apresentar em ordem crescente usando funções"
Var

   aNotas: VETOR[1..50] DE INTEIRO
   I, N, Y, nNumero: INTEIRO
   aNotasOrdenadas: VETOR[1..50] DE INTEIRO
   FUNCAO Fnotas(Recebe_Y: INTEIRO):INTEIRO
   Total: INTEIRO

Inicio

   aNotas[I] -> aNotas[I]
   Retorne Total

Fimfuncao

Inicio

   Escreva("Digite o número de notas que você deseja ordenar: ")
   Leia(nNumero)

   Para I De 1 Ate nNumero Faca
      Escreva("Digite a", I,"° nota: ")
      Leia(aNotas[I])
   Fimpara

   Para I De 1 Ate nNumero Faca
      Para N De 1 Ate nNumero-1 Faca
         Se aNotas > aNotas+1 Entao
            Y <- aNotas[N]
            aNotas[N] <- aNotas[N+1]
            aNotas[N+1] <- Y
         Fimse
      Fimpara
   Fimpara

   Escreval("A ordem crescente dos números é: ")
   Para I De 1 Ate N Faca
      Escreval(anotas[I])
   Fimpara

Fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu dei uma revisada nele, mesmo assim ainda tem erros, mas, ficou assim:

Algoritmo "Obter natas e apresentar em ordem crescente usando funções"
Var

   nNumero, I, N: INTEIRO
   aNotas: VETOR[1..50] DE INTEIRO
FUNCAO FNotas(Recebe_aNotasI: INTEIRO):INTEIRO

Var

   I, N, Y, nNumero: INTEIRO
   aNotas: VETOR[1..50] DE INTEIRO
   Total: INTEIRO

Inicio

   Para I De 1 Ate nNumero Faca
      Para N De 1 Ate nNumero-1 Faca
         Se aNotas > aNotas+1 Entao
            Y <- aNotas[N]
            aNotas[N] <- aNotas[N+1]
            aNotas[N+1] <- Y
         Fimse
      Fimpara
   Fimpara

   FNotas <- aNotas[I]
   Retorne Total

Fimfuncao

Inicio

   Escreva("Digite o número de notas que você deseja calcular: ")
   Leia(nNumero)

   Para I De 1 Ate nNumero Faca
      Escreva("Digite a", I,"° nota: ")
      Leia(aNotas[I])
   Fimpara

   Escreval("A ordem crescente dos números é: ")
   Para I De 1 Ate N Faca
      Escreval(FNotas)
   Fimpara

Fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

ATUALIZAÇÃO:

Fiz uma atualização no algoritmo e eu acho que cheguei bem próximo do resultado final. O problema agora é quem tem vezes que eu digito um número de notas que eu desejo ordenar e ele encerra o algoritmo ou tem vezes que ele encerra quando está ordenando os vetores. Depois disso não passou, erro de sintaxe na parte de ordenação não é, já peguei aquela parte separada montei um de ordenar sem função e deu certo. Queria pedir ajuda pra conclui-ló.

Algoritmo "Obter notas e apresentar em ordem crescente"
Var

   Resultado: INTEIRO
FUNCAO FNotas(Retorno: INTEIRO):INTEIRO

Var

   aNotas: VETOR[1..50] DE INTEIRO
   I, N, Y, nNumero, FNotas: INTEIRO

Inicio

   Escreva("Digite o número de notas que você deseja ordenar: ")
   Leia(nNumero)

   Para I De 1 Ate nNumero Faca
      Escreva("Digite a", I,"° nota: ")
      Leia(aNotas[I])
   Fimpara

   Para I De 1 Ate nNumero Faca
      Para N De 1 Ate nNumero-1 Faca
         Se aNotas[N] > aNotas[N+1] Entao
            Y <- aNotas[N]
            aNotas[N] <- aNotas[N+1]
            aNotas[N+1] <- Y
         Fimse
      Fimpara
   Fimpara

   Escreval("A ordem crescente dos números é: ")
   Para I De 1 Ate N Faca
      Escreval(aNotas[I])
   Fimpara

Fimfuncao

Inicio

   Resultado <- FNotas()

Fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por janir.matheus
      Bom dia, não tenho muita prática com JavaScript (tive contato apenas durante um período no CEDERJ). Ocorre que agora preciso do bendito, e não estou conseguindo sair de uma situação. Vou postar o código:
      <script language="JavaScript"> coordenadas = ""; //Defini essa variável segundo meus conhecimentos, por ter omitido a palavra 'var' ela é global function sucesso(posicao) { coordenadas = posicao.coords.latitude; //document.write(coordenadas); //Aqui dentro ela escreve o valor da latitude } if('geolocation' in navigator) { navigator.geolocation.getCurrentPosition(sucesso); } else { alert("Navegador incompatível com esse recurso"); } document.write(coordenadas); //Aqui eu NÃO consigo pegar o valor </script> Basicamente eu quero salvar os valores de Latitude, Longitude e Timestamp em variáveis para poder usa-las posteriormente. Conto com a vossa ajuda. 
      Obrigado.
    • Por Millena Oliveira
      Oiii gente, boa noite. Estou estudando ainda e me deram um desafio para desenvolver um programa que imprimisse na tela somente os números primos segundo o valor que o usuário colocasse na execução. Utilizei o readLine para isso. Usei um objeto para que repetisse a execução e salvei todos os números numa array. O problema é, quando faço o teste colocando um número qualquer, retorna uma array vazia. Poderia me dar uma ajuda? Segue abaixo todo o código.
      Obrigada :)
       
      var readline = require("readline"); var rl = readline.createInterface({ input: process.stdin, output: process.stdout }); function desafioPrimos() { var primos = []; rl.question("Digite um número: ", function (num) { console.log(primos); numero = parseInt(num); numerosPrimos: for (var x = 2; x <= num; x++) { for (var y = 2; y < x; y++) { if (x % y === 0) continue numerosPrimos; }; primos.push(x); rl.close(); }; }); }; desafioPrimos();  
    • Por vanessalopes
      Olá Gente me ajudam a resolver esses exercícios? Vamos lá   ( TODOS ESSES PROGRAMAS A ESTRUTURA DE REPETIÇÃO E ENQUANTO E SE TAMBÉM OBRIGADA)
       
      1 - Imprima Os Números Primos Compreendidos entre 1 e 100 e faça um algoritmo para resolver esse problema.
       
      Eu Montei o Algoritmo dessa forma, ele roda mais o resultado não tá exato no Visual G, se puder me ajudar com essa questão 
       
      var p,n:inteiro
      inicio
       
      leia (n) 
      p<- 1
      enquanto p<=100 faca
      se p mod = 0 entao
      escreva (" Esse Numero é Primo",p)
      senao
      escreva (" Esse numero não é Primo")
      fimse
      fimenquanto
      fimalgoritmo
       
      2 - faça um algoritmo para que seja digitado a idade e diga se a pessoa e maior de idade ou não faça isso até que alguém digite 100 anos.
       
      estrutura de repetição enquanto faca/se entao
       
      3 -faça um algoritmo que imprima de 1 a 100 de forma decrescente 
       
      estrutura de repetição enquanto
      acrescentei o exemplo d<-d-1  mesmo assim não rodou
       
      4- construa um algoritmo que diga os divisores de 100 compreendidos de 1 a 20 
       
      bom, esse também eu fiz mais não conseguir roda 
       
       
      5 - DIVISOES DO TRIANGULO E DIZER SE O MESMO E ISOCELE, ESCALENO OU EQUILATERIO 
       
      LEIA (L1)
      LEIA (L2)
      LEIA (L3)
      ....
      (SE)
    • Por reberthkss
      Bom dia!
       
      Eu tenho um programa escrito em C e nele estou utilizando funções, e para ter boa prática, eu quero separar as funções do programa principal.
      Então to querendo criar uma header e outro arquivo .c para colocar as funções. Ai eu fico com:
       
      Arquivo .h "Funcoes.h"; Arquivo .c "Funcoes.c" Arquivo .c "main.c"  
      Eu tentei fazer o esquema acima, mas quando compilo o arquivo main.c o compilador me retorna um erro (Anexo I);
       
       

      Na minha opinião era pra dar certo, pois fiz igual um exemplo que eu tenho aqui (o exemplo tá em c++)...
       
      o que eu to deixando passar pra não ter dado certo?
      // FUNCOES.H #pragma once #include <stdio.h> #include <math.h> extern int assentoC[23]; extern int assentoJ[23]; extern float valort; void limpavetor(int *v1,int*v2); //FUNCOES.C #include "funcoes.h" void limparvetor(int *v1,int *v2){ int i; for(i=0;i<23;i++){ *(v1+i)=0; *(v2+i)=0; } } //MAIN.C #include<stdio.h> #include<math.h> #include <string.h> #include "funcoes.h" int assentoC[23]; int assentoJ[23]; float valort=0; char* verStatusAss(int *assento) {if(*assento>0) return "OCUPADO"; else return "DISPONIVEL"; } void comprar() { int i; int opt=0; int qt=0; int ass[23]; int confirma=0; int menu=0; int contDJ=1; int contDC=1; int destino=0; int cont=0; float valor1=28.0,valor2=159.0,valor3=188.0; printf("\t\t MENU\n"); printf("Destino: [1] Sao Paulo [2] Curitiba [3] Florianopolis: "); scanf("%i",&destino); printf("\n"); printf("voce quer comprar assentos em/ou: \n\n"); for(i=0;i<23;i++){ if(assentoC[i]==0){ contDC=0; } } for(i=0;i<23;i++){ if(assentoJ[i]==0){ contDJ=0; } } printf("ASSENTO DISPONIVEIS EM\n"); if(contDJ==0) printf("\n1 - Janela\n\n"); if(contDC==0) printf("2 - Corredor\n"); printf("\n\n\n3 - Voltar para menu principal\n"); scanf("%i",&opt); switch(opt){ case 1: printf("[JANELA] Quantos assentos?:"); scanf("%i",&qt); printf("\n"); printf("[JANELA] Qual/Quais assento?: "); for(i=0;i<qt;i++){ cont=0; while(cont<1){ printf("[JANELA] Bilhete: %i. Assento: ",i+1); scanf("%i",&ass[i]); printf("\n"); if(assentoJ[ass[i]]!=0){ printf("Assento OCUPADO. Escolha outro assento! "); }else { cont++; } } } printf("\t\t RESUMO\n"); printf("Posicao: JANELA \n"); for(i=0;i<qt;i++){ printf("Bilhete: %i.\t Assento: %i\n",i+1,ass[i]); } printf("CONFIRMA?? "); printf("[1] SIM [0] NAO:"); scanf("%i",&confirma); if(confirma!=0){ for(i=0;i<qt;i++) { assentoJ[ass[i]]=1; switch(destino) { case 1: valort=valort+(qt*valor1); break; case 2: valort=valort+(qt*valor2); break; case 3: valort=valort+(qt*valor3); break; } } } else { printf("VENDA NAO EFETUADA! VOLTANDO AO MENU PRINCIPAL..."); } break; case 2: printf("[CORREDOR] Quantos assentos?:"); scanf("%i",&qt); printf("\n"); printf("[CORREDOR] Qual/Quais assento?: "); for(i=0;i<qt;i++){ printf("[CORREDOR] Bilhete: %i. Assento: ",i+1); scanf("%i",&ass[i]); printf("\n"); } printf("\t\t RESUMO\n"); printf("Posicao: CORREDOR \n"); for(i=0;i<qt;i++){ printf("Bilhete: %i.\t Assento: %i\n",i+1,ass[i]); } printf("CONFIRMA?? "); printf("[1] SIM [0] NAO:"); scanf("%i",&confirma); if(confirma!=0){ for(i=0;i<qt;i++) { assentoJ[ass[i]]=1; } } else { printf("VENDA NAO EFETUADA! VOLTANDO AO MENU PRINCIPAL..."); } break; case 3: break; } } int menuprincipal() { int opt=0; printf("\t\t MENU PRINCIPAL\n\n"); printf("\t\t 1 - COMPRAR ASSENTO\n"); printf("\t\t 2 - VERIFICAR ASSENTOS\n"); printf("\t\t 3 - VER MAPA DO TRAJETO\n"); printf("\t\t 4 - VER LUCRO\n"); printf("\t\t 5 - SAIR\n"); printf("\t\t Digite uma opcao: "); scanf("%i",&opt); return opt; } int menusecundario() { int opt=0; printf("1 - COMPRAR ASSENTO // "); printf("2 - VERIFICAR ASSENTOS \n"); printf("3 - VER MAPA DO TRAJETO // "); printf("4 - VER LUCRO // "); printf("5 - VOLTAR PARA MENU PRINCIPAL\n"); printf("6 - SAIR \n"); printf("Digite uma opcao: "); scanf("%i",&opt); return opt; } void verAss() { int i; int opt=0; printf("\t\t MENU\n"); printf("voce quer ver assentos em/ou: \n"); printf("1 - Janela\n"); printf("2 - Corredor\n"); printf("3 - Todos\n"); printf("Digite uma opcao: "); scanf("%i",&opt); printf("\n"); for(i=0;i<23;i++) { switch(opt){ case 1: printf("[JANELA] Assento %i. STATUS: %s \n",i, verStatusAss(&assentoJ[i])); break; case 2: printf("[CORREDOR] Assento %i. STATUS: %s \n",i,verStatusAss(&assentoC[i])); break; case 3: printf("[JANELA] Assento %i. STATUS: %s \t [CORREDOR] Assento %i. STATUS: %s\n",i,verStatusAss(&assentoJ[i]),i,verStatusAss(&assentoC[i])); break; } } } int voltarMenuP(int *menu) { int menu2; printf("APERTE QUALQUER TECLA PARA VOLTAR AO MENU PRINCIPAL"); scanf("%i",&menu2); if(menu2!=0) *menu=1; return menu; } int acao(int opt,int * gameover) { int menu=0; while(!menu){ switch(opt){ case 1: comprar(); voltarMenuP(&menu); break; // VERIFICAR ASSENTOS case 2: verAss(); voltarMenuP(&menu); break; // verMap() case 3: printf("\t\t\MAPA\n"); printf("SJC\t->\t Sao Paulo\t->\t Curitiba\t->\t Florianopolis\n"); voltarMenuP(&menu); break; // verLuc() case 4: printf("Valor total: %.2f\n",valort); voltarMenuP(&menu); break; // exit() case 5: *gameover=1; return *gameover; break; } } } int main(){ int gameover=0; int opt; int i=0; limparvetor(&assentoC,&assentoJ); while(!gameover){ // MENU PRINCIPAL // -- func menuprincipal() acao(opt=menuprincipal(),&gameover); } return 0; }  
    • Por edvaldo joviano de paula
      Prezados, boa tarde!
      Preciso de uma ajuda sendo possível:
       
      Tenho o seguinte cenário em uma consulta ( formação de kits de produtos tendo como produto principal um valor igual, ex: produto 1 é formado pelos produtos 2 e 3)
      select codkit, produtos from kit where codkit = 1
      ---   ----
      1    2
      1    3
      Percebem que o resultado traz o codigo do kit (1) e os produtos que compoem este kit (2,3), porem o produto 2 tambem faz parte do kit 4 junto com o produto 10 e produto 3 faz parte do kit 5 junto com o produto 11 sendo:
      kit 1 (2,3)
      kit 4 (2,10)
      kit 5 (3,11).
       
      Eu preciso de uma ajuda sobre alguma função que ao comprar os produtos 2 e 3 e estes estando na mesma nota fiscal (select produtos from notafiscal = x) traga o resultado do kit que estes dois produtos juntos formam, exemplo, ao pesquisar (select produtos from notafiscal = x) nesta nota existir os produtos 2 e 3 traga o resultado 1, se na nota existir os produtos 2 e 10 traga o resultado 4 e se existir na consulta dos itens da nota os itens 3 e 11 o resultado seja 5. Caso na pesquisa eventualmente existir por exemplo 10 unidades do item 2, 5 unidades do item 3 e 5 unidades do item 10, o resultado deve ser 1 e 4 pois 5 unidades do 2+5 unidades do 3 forma o kit 1 e 5 unidades do 2+ 5 unidades do 10 formam o kit 4.
       
      Espero ter explicado de forma a ser entendido e agradeço a ajuda.
       
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.