Search the Community

Showing results for tags 'loop'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Programação & Desenvolvimento
    • ASP
    • PHP
    • .NET
    • Java
    • C, C++
    • Delphi, Kylix
    • Lógica de Programação
    • Mobile
    • Visual Basic
    • Outras Linguagens de Programação
  • WEB
    • HTML, XHTML, CSS
    • Ajax, JavaScript, XML, DOM
    • Editores
  • Arte & Design
    • Corel Draw
    • Fireworks
    • Flash & ActionScript
    • Photoshop
    • Outros Programas de Arte e Design
  • Sistemas Operacionais
    • Microsoft Windows
    • GNU/Linux
    • Outros Sistemas Operacionais
  • Softwares, Hardwares e Redes
    • Microsoft Office
    • Softwares Livres
    • Outros Softwares
    • Hardware
    • Redes
  • Banco de Dados
    • Access
    • MySQL
    • PostgreSQL
    • SQL Server
    • Demais Bancos
  • Segurança e Malwares
    • Segurança
    • Remoção De Malwares
  • Empregos
    • Vagas Efetivas
    • Vagas para Estágios
    • Oportunidades para Freelances
  • Negócios & Oportunidades
    • Classificados & Serviços
    • Eventos
  • Geral
    • Avaliações de Trabalhos
    • Links
    • Outros Assuntos
    • Entretenimento
  • Script Brasil
    • Novidades e Anúncios Script Brasil
    • Mercado Livre / Mercado Sócios
    • Sugestões e Críticas
    • Apresentações

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

Found 34 results

  1. Boa tarde a todos, Gostaria muito da ajuda, pois não encontrei nas minhas pesquisas para resolver meu problema. Tenho uma planilha que ela tem mais de mil linhas, basicamente a macro que gravei é simples: ela pega a primeira linha, cola em outra planilha, copia os valores, depois volta pra planilha inicial compia a segunda linha e cola na outra planilha e copia valores. No entanto, é inviável eu gravar a macro para todas as linhas, por isso quero criar um loop que reproduza a mesma gravação para todas as linhas da planilha até encontrar uma linha vazia, que acaba o loop. Alguém consegue me ajudar inserindo o loop nos códigos?? Sub teste() ' ' teste Macro ' ' Range("A4:O4").Select Selection.Copy Range("A1").Select ActiveSheet.Paste Sheets("Planilha3").Select Range("A2").Select ActiveSheet.Paste Range("P2:T2").Select Application.CutCopyMode = False Selection.Copy Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Sheets("Planilha2").Select Range("A5:O5").Select Application.CutCopyMode = False Selection.Copy Range("A1").Select ActiveSheet.Paste Sheets("Planilha3").Select Range("A3").Select ActiveSheet.Paste Range("P3:T3").Select Application.CutCopyMode = False Selection.Copy Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False End Sub
  2. import matplotlib.pyplot as plt import matplotlib.animation as animation from matplotlib import style from datetime import datetime import serial import time style.use('ggplot') fig = plt.figure() ax1 = fig.add_subplot(1,1,1) porta = 'com7' baud_rate = 9600 opçao = input("Iniciar verificação de temperatura ? S ou N ") if opçao == "S": tempo = int(input("Informe o intervalo entre cada leitura: ")) objeto_porta = serial.Serial(porta, baud_rate) objeto_porta.flushInput() arquivo = open("LOG.txt", "a+") while True: # Cria o objeto_hoje, pega os valores de # dia, mes, ano e horario, converte para string objeto_hoje = datetime.today() dia = str(objeto_hoje.day) mes = str(objeto_hoje.month) ano = str(objeto_hoje.year) horario = str(objeto_hoje.strftime("%X")) # Le os valores passados pelo arduino temperatura = str(objeto_porta.readline()) arquivo.write(horario) arquivo.write(" ") arquivo.write(temperatura) arquivo.write("\n") def animate(i): arquivo = open("LOG.txt", "r").readline() lines = arquivo.split("\r\n") x = [] y = [] for line in lines: X, Y = line.split(" ") x.append(X) y.append(Y) ax1.clear() ax1.plot(x, y) ani= animation.FuncAnimation(fig, animate, interval=tempo*1000) plt.show() else: print("Saindo...") Olá, sou iniciante e estou desenvolvendo um sistema de controle de temperatura visual para um trabalho escolar, porem me deparei com o seguinte inconveniente Para gerar os gráficos estou usando a blibioteca matplotlib e para os dados lidos pelo sensor de temperatura eu utilizo um simples arquivo txt, como um log. Ou seja o conceito do projeto é Ler dados do sesor -> armazenar -> plottar o grafico. devido ao meu log funcionar dentro de um WHILE ao chegar no comando que chama o pyplot, plt.show(), ele não retorna ao inicio do loop dessa forma só a primeira leitura do sensor é armazenada e plottada Gostaria muito de ajuda pois sou um estudante por conta propria e não consigo visualizar a solucao para este problema
  3. Olá amigos, eu me chamo Daniel e sou aluno de ADS, alguns dias atrás eu encontrei um código pela internet de um jogo da velha simples, o código funciona perfeita mente, porèm, eu queria adaptar o programa para executar novamente, e é ai que està o problema, eu não consigo fazer o programa zerar e reiniciar novamente a partida, vou inserir o código logo abaixo, desde já agradeço sua ajuda. P.S 1 Já tentei colocar system("cls") em quase todos os lugares possiveis do código, mas não resolveu. #include <iostream> #include <stdlib.h> using namespace std; char matriz[3][3] = {'1','2','3','4','5','6','7','8','9'}; int n; char jog = 'X'; char sair = 's'; bool s = true; void Jogo(){ system("cls"); cout << "\n JOGO DA VELHA\n\n"; for (int a=0;a<3;a++){ cout << "\t"; for (int j=0;j<3;j++){ cout << matriz[a][j] << " "; } cout << "\n"; } cout << "\n"; } void Entrada(){ int p; cout << "Digite um numero: "; cin >> p; if (p==1){ if(matriz[0][0] == '1'){ matriz[0][0] = jog; } else{ cout << "\nJogada invalida! Tente novamente.\n\n"; Entrada(); } } else if(p==2){ if(matriz[0][1] == '2'){ matriz[0][1] = jog; } else{ cout << "\nJogada invalida! Tente novamente.\n\n"; Entrada(); } } else if(p==3){ if(matriz[0][2] == '3'){ matriz[0][2] = jog; } else{ cout << "\nJogada invalida! Tente novamente.\n\n"; Entrada(); } } else if(p==4){ if(matriz[1][0] == '4'){ matriz[1][0] = jog; } else{ cout << "\nJogada invalida! Tente novamente.\n\n"; Entrada(); } } else if(p==5){ if(matriz[1][1] == '5'){ matriz[1][1] = jog; } else{ cout << "\nJogada invalida! Tente novamente.\n\n"; Entrada(); } } else if(p==6){ if(matriz[1][2] == '6'){ matriz[1][2] = jog; } else{ cout << "\nJogada invalida! Tente novamente.\n\n"; Entrada(); } } else if(p==7){ if(matriz[2][0] == '7'){ matriz[2][0] = jog; } else{ cout << "\nJogada invalida! Tente novamente.\n\n"; Entrada(); } } else if(p==8){ if(matriz[2][1] == '8'){ matriz[2][1] = jog; } else{ cout << "\nJogada invalida! Tente novamente.\n\n"; Entrada(); } } else if(p==9){ if(matriz[2][2] == '9'){ matriz[2][2] = jog; } else{ cout << "\nJogada invalida! Tente novamente.\n\n"; Entrada(); } } } void Alterna(){ if (jog == 'X') jog = 'O'; else jog = 'X'; } char Vencedor(){ // Jogador 1 if (matriz[0][0] == 'X' && matriz[0][1] == 'X' && matriz[0][2] == 'X') return 'X'; if (matriz[1][0] == 'X' && matriz[1][1] == 'X' && matriz[1][2] == 'X') return 'X'; if (matriz[2][0] == 'X' && matriz[2][1] == 'X' && matriz[2][2] == 'X') return 'X'; if (matriz[0][0] == 'X' && matriz[1][0] == 'X' && matriz[2][0] == 'X') return 'X'; if (matriz[0][1] == 'X' && matriz[1][1] == 'X' && matriz[2][1] == 'X') return 'X'; if (matriz[0][2] == 'X' && matriz[1][2] == 'X' && matriz[2][2] == 'X') return 'X'; if (matriz[0][0] == 'X' && matriz[1][1] == 'X' && matriz[2][2] == 'X') return 'X'; if (matriz[0][2] == 'X' && matriz[1][1] == 'X' && matriz[2][0] == 'X') return 'X'; //Jogador2 if (matriz[0][0] == 'O' && matriz[0][1] == 'O' && matriz[0][2] == 'O') return 'O'; if (matriz[1][0] == 'O' && matriz[1][1] == 'O' && matriz[1][2] == 'O') return 'O'; if (matriz[2][0] == 'O' && matriz[2][1] == 'O' && matriz[2][2] == 'O') return 'O'; if (matriz[0][0] == 'O' && matriz[1][0] == 'O' && matriz[2][0] == 'O') return 'O'; if (matriz[0][1] == 'O' && matriz[1][1] == 'O' && matriz[2][1] == 'O') return 'O'; if (matriz[0][2] == 'O' && matriz[1][2] == 'O' && matriz[2][2] == 'O') return 'O'; if (matriz[0][0] == 'O' && matriz[1][1] == 'O' && matriz[2][2] == 'O') return 'O'; if (matriz[0][2] == 'O' && matriz[1][1] == 'O' && matriz[2][0] == 'O') return 'O'; return 'e'; } int main(){ while (s == true){ Jogo(); while (true){ n++; Entrada(); Jogo(); if (Vencedor() == 'X'){ cout << "Jogador X Venceu!\n\n"; break; } else if(Vencedor() == 'O'){ cout << "Jogador O Venceu!\n\n"; break; } else if(Vencedor() == 'e' && n == 9){ cout << "Deu empate!\n\n"; break; } Alterna(); } cout << "Jogar novamente?\n(s/n): "; cin >> sair; if(sair == 's' || sair == 'S'){ s = true; } else if(sair == 'n' || sair == 'N'){ s = false; break; } } system("pause"); }
  4. Um grande salve a todos. Estou com uma certa dificuldade em desenvolver uma rotina recursiva que me permita dar valores para uma função(no caso são 3). Os criterios para desenvolvimento devem seguir poucas restrições, por isso creio que não seja tão difícil, são os seguintes: 1- As funções são do tipo: y(variavel dependente) = a - b*x - b*z (x e z são variáveis independentes) x(variavel dependente) = a - b*y - b*z (y e z são variáveis independentes) z(variavel dependente) = a - b*x - b*y (x e y são variáveis independentes) 2 - Deve - se criar um laço que dê valores para as variaveis independentes (de 1 a 10 por exemplo), fazendo isso armazenar cada valor de resultado da equação em questão por exmplo para x e z = 1; y='?'(armazena'?') obs: x e z devem ficar tambem gravados. 3 - Agora a parte mais difícil , fazer com o algoritimo enxergar o maior valor gerado das variaveis dependentes( y x z), com uma condição de serem iguais, ou seja não me importa se y deu 100 ou se x deu 50... importa é achar o maior valor comum entre y x z, se possivel! ps: vocês devem ter notado que as variaveis hora são dependentes hora são independentes.
  5. Comecei a aprender programação a pouco tempo, alguém poderia me explicar como se usa o ciclo for e while em C?
  6. Olá! Estou a tentar programar uma macro em VBA que corra a linha A, encontre o campo "Pagador" e devolva o número de valores diferentes presentes na respetiva coluna. No entanto, quando corro a macro o excel bloqueia e penso que entra em loop infinito e não consigo perceber porquê. Alguém me consegue ajudar? O código que estou a usar é: Private Sub CommandButton2_Click() Dim scol As New Collection Dim MyAr As Variant Dim x As Long Dim z As Integer Sheets("Aux").Activate Sheets("Aux").Range("A1").Select Do While ActiveCell.Value <> "" If ActiveCell.Value = "Pagador" Then With Sheets("AUX") C = Cells(Rows.Count, ActiveCell.Column).End(xlUp).Row A = ActiveCell.Offset(1, 0) B = ActiveCell.Offset(C, 0) MyAr = .Range("A:B").Value For i = 1 To UBound(MyAr) On Error Resume Next scol.Add MyAr(i, 1), Chr(34) & _ MyAr(i, 1) & Chr(34) On Error GoTo 0 Next i End With x = scol.Count Else ActiveCell.Offset(0, 1).Select End If Loop Sheets("Customer").Range("C32") = x End Sub
  7. Saudações! Acabei de me inscrever no fórum (primeiro fórum que me inscrevo) porque estou com uma dúvida que está tirando meu sono: Como fazer o While verificar a condição no meio da execução dos seus comandos? Bem, primeiro meu objetivo: Fazer um jogo de perguntas e respostas do tipo múltipla escolha, onde o jogador pode ir respondendo as questões enquanto não tiver errado 3 perguntas. Estou usando o Dev C++ e escrevendo em C++ também, fiz uma versão menor só pra verificar a funcionalidade, e ficou assim: #include <iostream> using namespace std; int main(void){ int resposta, erros=0, acertos=0; while (erros<1){ cout<<"\nQual a cor do ceu?\n\t1 - Azul\n\t2 - Rosa\n\t3 - Branco\nResposta: "; cin>>resposta; if(resposta!=1){ erros++; } else{ acertos++; } cout<<"\nQual a cor da agua?\n\t1 - Azul\n\t2 - Rosa\n\t3 - Incolor\nResposta: "; cin>>resposta; if(resposta!=3){ erros++; } else acertos++; // Se o programa chegou aqui, todas as perguntas foram respondidas e deve sair do loop erros=1; cout<<"\n\n\t\t Erros: "<<erros; } // Exibi a pontuação do jogador cout<<"\n\n\n\t Sua pontuacao foi: "<<acertos<<"\n\n"; system("PAUSE"); return 0; } Ou seja, se errar a primeira pergunta, o jogador não responde a segunda, e se ele acertar as duas, ele sai do programa do mesmo modo, e sua pontuação é igual ao seu número de acertos. Porém, não está funcionando, quando o jogador erra a primeira pergunta, a variável erros muda pra 1 ou seja, deixou de ser menor que 1 e passou a ser igual, porém o "ENQUANTO" continua seu loop e só volta a verificar a variável quando acaba. Já tentei usar o break e o continue porém, nenhum dos dois tem os resultados que quero, já que o break sai de todo o bloco do while, então se o contador fosse 3, não importaria, pois no primeiro erro o programa chegaria ao fim. Eu sei que a solução fácil pra isso seria fazer vários "ifs" antes das questões pra verificar o número de erros. Mas essa é uma solução meio idiota pois iria aumentar muito o tamanho do programa, e eu não estou programando com objetos, então queria saber alguma solução para fazer o While verificar dentro de seu próprio Loop se ela ainda está apto a ser executado ou deveria ser parado, não sei se existe essa possibilidade, pois pelo que eu saiba o funcionamento do While é tosco assim: Condição -> Executa todos os comandos do bloco -> Volta pra condição Eu queria algo assim: Condição -> Comandos !CONDIÇÃO DESFEITA! -> Sai da condição Eu também pensei em colocar: if( erros>=3) break; Ao final de cada pergunta, mas ainda assim, pra mim parece algo muito tosco. O problema é por ser um programa linear? Não existe realmente outra opção ou eu ainda preciso aprender mais?
  8. BrunoDivino

    Organizando Loop

    Bom dia pessoal, tenho um codigo aqui em php que montei, funciona da seguinte forma, bem simples eu vou adicionando box "produto" e ele vai colocando um a baixo do outro, só que eu quero que ele apareça um do lado do outro e que quando desse 3 em uma linha, quebrasse para a próxima, mais não estou dando conta de fazer isso segue o código; <html> <head> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> <style> a:link, a:visited { text-decoration: none; } a:hover { text-decoration: none; color: #f00 } a:active { text-decoration: none; } #caixa{ width:350px; height:450px; padding:8px; background-color:#fff; border-radius: 10px; border-color:#000000; border-color: #2C3E50; border-style: solid; border-bottom-width: 5px; border-top-width: 5px; border-right-width: 1px; border-left-width: 1px; } #caixa:hover{ width:350px; height:450px; padding:8px; background-color:#fff; border-radius: 10px; border-color:#000000; box-shadow:0 1px 10px #A6A6A6; border-color: #2C3E50; border-style: solid; border-bottom-width: 5px; border-top-width: 5px; border-right-width: 1px; border-left-width: 1px; } #texto-superior{ text-align: center; font-size: 11px; color:#D5D5D5; } #titulo-webinar{ text-align: center; color:#2C3E50; } #topicos{ text-align: left; color:#7C7C7C; padding: 2px 0px 0px 20px; } #botao{ text-transform: uppercase; width:350px; height:35px; padding: 8px 0px 0px 0px; background-color:#DF4000; border-radius: 10px; text-align: center; box-shadow:0 1px 10px #A6A6A6; color:#7C7C7C; position: absolute; color:#FFF; font-size: 20px; } #divisoria{ padding: 10px 0px 0px 0px; } </style> </head> <body> <?php include("./configuracao/conn.php"); error_reporting(E_ALL & ~ E_NOTICE & ~ E_DEPRECATED); $sql = "SELECT * FROM webinardados WHERE categoria = 'Data prevista'"; $resultado = mysql_query($sql); ?> <?php while ($webinar = mysql_fetch_assoc($resultado)) { ?> <div id="caixa"> <div id="texto-superior"> <p> PALESTRA ONLINE </p> </div> <div id="titulo-webinar"> <h3><?php echo $webinar['titulo']; ?></h3> </div> <div id="divisoria"> <hr width=300 size=1 color=#D5D5D5 noshade> </div> <div id="topicos"> <p><i class="fa fa-calendar" aria-hidden="true"></i> <?php echo $webinar['datawb']; ?></p> <p><i class="fa fa-check-circle-o" aria-hidden="true"></i> <?php echo $webinar['topico1']; ?></p> <p><i class="fa fa-check-circle-o" aria-hidden="true"></i> <?php echo $webinar['topico2']; ?></p> <p><i class="fa fa-check-circle-o" aria-hidden="true"></i> <?php echo $webinar['topico3']; ?></p> </div><br><br><br><br> <a href="<?php echo $webinar['linkbtn']; ?>" id="botao" target="blank" title="<?php echo $webinar['titulo']; ?>"> <?php echo $webinar['textobtn']; ?> </a> </div><br> <?php } ?> </body> </html> E um código simples, funciona perfeitamente, quando eu adiciono novos produtos, ele e adicionado certinho só que o problema e que ele esta indo para baixo, e eu quero que ele fique lado ao lado e quando der 3 em uma linha ele quebre e comece a ser adicionado a baixo em ordem que os mais recente fiquem na primeira linha, só que não dei conta de fazer esse procedimento rs.
  9. EdiJunior

    Ajuda com o While

    EXERCICIO: Faça um programa que leia a quantidade de pessoas que serão convidadas para uma festa. Após isso o programa irá perguntar o nome de todas as pessoas e colocar numa lista de convidados.Após isso irá imprimir todos os nomes da lista Bom dia pessoal, sempre que estou no while fico travado na variável input (como string) e não consigo deixá-la como acumuladora ao tentar "printar" os nomes. Geralmente consigo usar o input (inteiro ou float) como acumulador, mas, quando é do tipo string não consigo pensar em um jeito de deixar como acumulador.
  10. Ola pessoal, Sou novo no fórum, e também no que diz respeito a programação, então vamos ao ponto... Tenho uma planilha na qual eu tenho um relatório de obras, que preencho campos como horário de entrada e saída de vários funcionários, e uma planilha individual para cada funcionário citado no relatório de obras, onde essa planilha individual, é feito um relatório de horário de entrada e saída do funcionário x. Eu criei um código que é eficaz, que percorre todos os nomes e planilhas, preenchendo o horário conforme o dia citado no relatório de obras, porém, imagino que exista soluções melhores. O que fazer para melhorar? Código em abaixo. Application.ScreenUpdating = False Dim Data As Date Dim W As Worksheet Dim W2 As Worksheet Dim Hora As Date Dim Funcionarios As String Dim Ent1 As Date Dim Sai1 As Date Dim Ent2 As Date Dim Sai2 As Date Dim He70 As Long Dim He100 As Long Dim Adn As Long Dim Total As Long Set W = Sheets("Plan1") Set W2 = Sheets("Plan3") W.Select W.Range("J2").Select Data = W.Range("J2") Funcionarios = W2.Range("D2") W.Range("c5").Select Do While Funcionarios <> ActiveCell.Value ActiveCell.Offset(1, 0).Select Loop Ent1 = ActiveCell.Offset(0, 2).Value Sai1 = ActiveCell.Offset(0, 3).Value Ent2 = ActiveCell.Offset(0, 4).Value Sai2 = ActiveCell.Offset(0, 5).Value He70 = ActiveCell.Offset(0, 7).Value He100 = ActiveCell.Offset(0, 8).Value Adn = ActiveCell.Offset(0, 9).Value Total = ActiveCell.Offset(0, 6).Value W2.Select W2.Range("C4").Select Do While ActiveCell.Value <> Data ActiveCell.Offset(1, 0).Select Loop If ActiveCell.Offset(0, 1).Value <= "" Then ActiveCell.Offset(0, 1).Value = Ent1 ActiveCell.Offset(0, 2).Value = Sai1 ActiveCell.Offset(0, 3).Value = Ent2 ActiveCell.Offset(0, 4).Value = Sai2 ActiveCell.Offset(0, 5).Value = Total ActiveCell.Offset(0, 6).Value = He70 ActiveCell.Offset(0, 7).Value = He100 ActiveCell.Offset(0, 8).Value = Adn Else MsgBox "Esse dia já foi preenchido" End If '-------------------------------------------------------------------------------------- W.Select W.Range("J2").Select Set W2 = Sheets("Plan2") Data = W.Range("J2") Funcionarios = W2.Range("D2") W.Range("c5").Select Do While Funcionarios <> ActiveCell.Value ActiveCell.Offset(1, 0).Select Loop Ent1 = ActiveCell.Offset(0, 2).Value Sai1 = ActiveCell.Offset(0, 3).Value Ent2 = ActiveCell.Offset(0, 4).Value Sai2 = ActiveCell.Offset(0, 5).Value He70 = ActiveCell.Offset(0, 7).Value He100 = ActiveCell.Offset(0, 8).Value Adn = ActiveCell.Offset(0, 9).Value Total = ActiveCell.Offset(0, 6).Value W2.Select W2.Range("C4").Select Do While ActiveCell.Value <> Data ActiveCell.Offset(1, 0).Select Loop If ActiveCell.Offset(0, 1).Value <= "" Then ActiveCell.Offset(0, 1).Value = Ent1 ActiveCell.Offset(0, 2).Value = Sai1 ActiveCell.Offset(0, 3).Value = Ent2 ActiveCell.Offset(0, 4).Value = Sai2 ActiveCell.Offset(0, 5).Value = Total ActiveCell.Offset(0, 6).Value = He70 ActiveCell.Offset(0, 7).Value = He100 ActiveCell.Offset(0, 8).Value = Adn Else MsgBox "Esse dia já foi preenchido" End If
  11. Boa tarde, Pessoal. Estou criando uma planilha para gerar um tipo de Lâmina para Fundos de Investimento aqui na minha empresa, fiz todo o layout e busco as informações de um site externo por meio de um AddIn disponibilizado por esse site compatível com o Excel. Logo, fiz uma Macro com um Loop For Next junto com o Application.OnTime (para esperar alguns segundos antes de gerar o pdf, para dar tempo de puxar as informações do AddIn do site externo), já o Loop For Next serve para ir trocando de fundos, pois quero que gere o PDF de vários fundos (cerca de 200). Depois, esse Application.OnTime redireciona para uma outra macro que arruma os formatos do PDF e depois gera o PDF e salva em uma pasta apropriada. O grande problema é que depois de gerar o PDF, o Loop For Next da outra macro não continua, ou seja, só estou conseguindo gerar 1 lâmina. O que poderia ser feito para arrumar isso? Utilizar um GoTo na macro de gerar o PDF para voltar para a macro com o Loop? Mas isso não resetaria a variável de contagem e geraria a mesma lâmina para sempre? Estou aberto para sugestões, vou passar uma planilha fictícia do meu problema para ver se vocês conseguem me ajudar, pois não posso enviar a planilha real por conta das informações da empresa. Link Planilha Fictícia: https://www.dropbox.com/sh/opssmhehqgsxgii/AAC7UHnD02A7U36VQJRpyZPMa?dl=0 Notem que a planilha está sem nenhum tipo de formula, pois colei tudo como valor para mostrar a vocês, o que precisa ser feito é: Todos os fundos da Aba "FUNDOS EMPRESA" na coluna D, devem passar um por um para a Aba "LÂMINA" na célula W1, depois esperar 59 segundos e em seguida gerar o PDF e salvar na pasta padrão, depois voltar para o próximo fundo e repetir o processo até que se encerrem os fundos. As macros utilizadas foram: Sub auto_open() For A = 1 To 5 Worksheets("LÂMINA").Range("W1") = Worksheets("Fundos SMI").Cells(A + 3, 4) Dim fechar As Date fechar = Now + TimeValue("00:00:59") Application.OnTime fechar, "fazerpdf" Next End Sub Sub fazerpdf() Range("W20:W23").Select Selection.Copy Range("I20:T23").Select Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _ SkipBlanks:=False, Transpose:=False Application.CutCopyMode = False Sheets("LÂMINA").ExportAsFixedFormat Type:=xlTypePDF _ , Filename:="S:\ASSESSORIA\Temporário\André\Melhorias\Em Andamento\Automatização das Lâminas\Lâminas\" & Range("B6") & "", OpenAfterPublish:=False End Sub Conto com a ajuda de vocês, agradeço desde já. André.
  12. Eai pessoal, beleza? Comecei a estudar C++ recentemente. Estava criando um código que convertesse temperatura de Celsius para Fahrenheit. Porém, no final eu queria adicionar uma opção de "Digitar 1 para fazer outra conversão, digitar 2 para sair." E se digitasse qualquer outra coisa, daria como Invalido e pediria para digitar 1 ou 2 de novo. Como faço isso? Aqui está o meu código:
  13. <?php // Configurações do banco de dados date_default_timezone_set("America/Recife"); if (!defined('SERVIDOR')) define('SERVIDOR', 'localhost'); if (!defined('USUARIO')) define('USUARIO', 'root'); if (!defined('SENHA')) define('SENHA', ''); if (!defined('BANCO')) define('BANCO', 'agenciawp2'); if (!defined('CHARSET')) define("CHARSET", "utf8"); // Definir URL BASE define('URL_BASE', 'http://localhost/agenciawp2/'); define('URL_ADMIN', 'http://localhost/agenciawp2/admin/'); $conexao = @mysqli_connect(SERVIDOR, USUARIO, SENHA, BANCO) or die (mysqli_connect_error()); mysqli_set_charset($conexao, CHARSET); ?> CREATE TABLE IF NOT EXISTS `categoria` ( `cat_id` int(11) NOT NULL AUTO_INCREMENT, `cat_name` varchar(60) NOT NULL, `cat_slug` varchar(60) NOT NULL, PRIMARY KEY (`cat_id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=13 ; CREATE TABLE IF NOT EXISTS `post` ( `post_id` int(11) NOT NULL AUTO_INCREMENT, `post_cat_id` int(11) NOT NULL, `post_name` varchar(200) NOT NULL, `post_slug` varchar(220) NOT NULL, `post_img` varchar(100) NOT NULL, `post_text` text NOT NULL, `post_views` int(11) NOT NULL, `post_data` date NOT NULL, `post_author` varchar(200) NOT NULL, `post_ativo` int(1) NOT NULL, PRIMARY KEY (`post_id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ; <div class="table-responsive"> <table class="table"> <thead> <tr> <th width="6%">id</th> <th width="30%">Título</th> <th width="30%">Categoria</th> <th align="center">Ação</th> </tr> </thead> <?php $sql = "SELECT * FROM post p, categoria c WHERE p.post_cat_id = c.cat_id ORDER BY post_id DESC "; $qry = mysqli_query($conexao, $sql); while ($linha = mysqli_fetch_array($qry)) { ?> <tbody> <tr> <td align="center"><?php echo $linha["post_id"] ?></td> <td align="left"><?php echo $linha["post_name"] ?></td> <td align="left"><?php echo $linha["cat_name"] ?></td> <td ><a class="btn btn-primary" href="index.php?link=3&id<?php echo $linha["post_id"]?>">Editar</a></td> <td ><a class="btn btn-danger" href="index.php?link=3&id<?php echo $linha["post_id"]?>">Deletar</a></td> </tr> </tbody> <?php } ?> </table> </div> Neste caso não está aparecendo nada. Já não sei mais o que fazer. É algo simples. Porém, tá complicado solucionar. =============================================== Segundo caso: <?php @$ordem = isset($_GET["ordem"]) ? $_GET["ordem"]:"0"; @$campo = isset($_GET["campo"]) ? $_GET["campo"]:""; @$search = isset($_GET["search"]) ? $_GET["search"]:""; ?> <!-- PESQUISAR --> <style> .my-group .form-control{ width:50%; } </style> <form action="index.php" method="get" class=""> <div class="input-group my-group"> <input type="text" class="form-control" name="search" value="<?php //echo $search ?>" placeholder="Digite o nome do post..."> <select class="form-control" data-live-search="true" name="campo"> <option value="post_name">Postagem</option> </select> <span class="input-group-btn"> <input type="hidden" name="link" value="2"> <input class="btn btn-default" type="submit" value="Pesquisar" name="Submit"> </span> </div> </form> <h4>Lista de Posts</h4> <a href="index.php?link=4" class="btn btn-success">CADASTRAR POST</a> <br><br> <?php if ($search =="") { $sql = "SELECT * FROM post p, categoria c WHERE p.post_cat_id = c.cat_id ORDER BY post_id DESC "; (se eu tirar essa parte em negrito, exibe tudo menos o cat_name que está na tabela categorias) } else { $sql = "SELECT * FROM post WHERE $campo LIKE '%$search%' "; } $total = total($sql); if($total <= 0) { echo "Nenhum Registro Para Exibir"; } else { echo "Há " . $total . " Posts cadastrados"; } ?> <br><br> <div class="table-responsive"> <table class="table"> <thead> <tr> <th width="6%">id</th> <th width="30%">Título</th> <th width="30%">Categoria</th> <th align="center">Ação</th> </tr> </thead> <?php $lpp = 4; //linhas por páginas $inicio = $ordem * $lpp; $post = selecionar($sql . " LIMIT $inicio, $lpp"); foreach ($post as $posts) { (linha 78 - CRUD) ?> <tbody> <tr> <td align="center"><?php echo $posts["post_id"]; ?></td> <td align="left"><?php echo $posts["post_name"]; ?></td> <td align="left"><?php echo $posts["cat_name"]; ?></td> <td ><a class="btn btn-primary" href="index.php?link=3&id<?php echo $posts["post_id"];?>">Editar</a></td> <td ><a class="btn btn-danger" href="index.php?link=3&id<?php echo $posts["post_id"];?>">Deletar</a></td> </tr> </tbody> <?php } ?> </table> </div> Erro: ) Warning: Invalid argument supplied for foreach() in C:\wamp\www\agenciawp2\admin\lst\lst-post.php on line 78 A questão é como envolver a tabela categoria nesse loop. Quero listar os post e a categoria de cada post também.
  14. Pessoal, estou construindo um conjunto cliente-servidorO servidor é em C# e o cliente é em C++ nativo.O meu servidor fica escutando uma determinada porta, aguardando a conexão de alguns clientes, o servidor também é multitarefa, podendo aceitar diversas conexões simultaneamente, porém estou com um problema muito preocupante, veja:Até agora usei duas threads as duas executam um laço de repetição infinito. A primeira thread(com o laço infinito) fica constantemente verificando se há novas conexões a serem aceitas, se existe alguma, ela adiciona a conexão em um List<TcpClient>, a segunda thread (também com loop infinito) fica constantemente verificando se essas conexões estão ativas, ou seja, se alguma delas não estiver, ele remove ela do List<TcpClient>.O meu problema é que quando fui monitorar o consumo de recursos da aplicação pelo gerenciador de tarefas, percebi que está consumindo incríveis 30% do meu processador (I5 4460 3.2 GHz). Estou achando esse consumo absurdo para uma aplicação relativamente simples.Laços de repetições infinitos consomem tanto assim? Ou o fato de usar Threads já contribui para esse consumo? Como eu poderia resolver este problema?
  15. Pessoal, Não estou conseguindo calcular o subtotal quando faço o select de um banco de dados. Como o select sum está dentro do loop ele traz sempre o subtotal em cada linha por registro, mas eu preciso que o subtotal seja mostrado somente na ultimo linha de cada registro. Alguém pode me ajudar? Segue abaixo o código: <% do while NOT RecSet.EOF%> <% nomeplanow = RecSet("nomeplano") valor = RecSet("valor") %> <table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td width="50%"><%=(nomeplanow)%></td> <td width="50%"><%=(valor)%></td> </tr> </table> <% Subtotal="SELECT SUM(valor) as valort FROM tab_movimento WHERE nomeplano='"&nomeplanow&"'" set RS=conexao.Execute(Subtotal) valort = (RS("valort")) %> <table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td width="50%">SUBTOTAL:)%></td> <td width="50%"><%=(valort)%></td> </tr> </table> <%RecSet.Movenext%> <%loop%> <%end if%><%conexao.close%>
  16. jamiel

    Página de categoria

    É uma página própria para listar postagens de uma determinada categoria. Há uma tabela post e outra categoria No começo da página eu chamo no nome da categoria. O código: <?php $id = $_GET["id"]; //Quando clico na origem (http://localhost/cftv/single-categoria.php?id=2) $sql = "SELECT cat_nome FROM categoria WHERE cat_id = ".$id; // Então, requisito o nome da categoria com base no id vindo do GET $qry = @mysqli_query($conexao, $sql); $linha = mysqli_fetch_array($qry); echo "<h1>".$linha["cat_nome"]."</h1>"; // Até aqui, tudo certo. Aparece sempre o nome da categoria que eu cliquei. Se fosse na outra categoria (Ex: 3), outro nome apareceria. ?> Agora, eu pretendo lista apenas postagens desta categoria. Aí, deu um branco e eu não estou conseguindo raciocinar sobre a solução: <?php $id = $_GET["id"]; $sql = "SELECT * FROM post p, categoria c WHERE p.cat_id = ".$id; $qry = @mysqli_query($conexao, $sql); while ($linha = @mysqli_fetch_array($qry)) { ?> <a href='single-post.php?post_id=<?php echo $linha["post_id"] ?>'><h2><?php echo $linha["post_title"] ?></h2></a> <br> <img src='<?php echo $linha["post_img"];?>' class="img-responsive" style="height: 200px;" > <br> <p> <?php $text = $linha["post_msg"]; echo substr($text, 0, 300) . '...'; ?> </p> <p> <span class="fa fa-clock-o" style="color: #0098da;"></span><strong> <?php echo $linha["post_data"] ?></strong> <br> <span class="fa fa-file-text-o" style="color: #0098da;"></span><strong> <?php echo $linha["post_tags"] ?></strong> <br> <span class="fa fa-list-ul" style="color: #0098da;"></span><strong> <?php echo $linha["cat_nome"] ?></strong> </p> <p><a href="single-post.php?post_id=<?php echo $linha["post_id"] ?>" class="btn btn-default default-custom">LER MAIS</a></p> <br> <?php } ?> <?php echo $paginacao; ?> Do jeito que está o segundo código (parei aí...), aparece uma postagem dessa categoria. O problema é que a postagem aparece infinitamente .... Agradeço desde já qualquer ajuda...
  17. clevton

    Dados repetidos

    Boa noite estou se matando aqui, podem me ajudar, seguinte tenho uma tabela no banco com o nome tbl_users com a coluna userPessoas porem eu quero pegar essa tabela mostrar ela porem existem repetidos dentro iguais mais quero mostrar apenas um de cada pessoa mesmo que exita Varios. exemplo: Marta Marta Adilson Felipe Quero que retorne desta tabela userPessoas um de cada Marta Adilson Felipe mesmo que a tabela tenha varias martas mostre apenas uma e o resto.aconteça a mesma coisa, tentei array, while, não consegui.
  18. Projeto: Um website com painel administrativo O foi feito até agora no painel: - As informações estão sendo gravadas corretamente no banco de dados. Inclusive a imagem. O script tem duas partes: inserção e imagem (joga a imagem para uma pasta e grava seu caminho para ser chamado mais na frente). - Lista dos posts no painel está funcionando normalmente. Porém, não consigo chamar a categoria que está em outra tabela: Na tabela post contém "cat_id" e na tabela categoria também tem um "cat_id". Não sei como chamar o nome da categoria que está na tabela categoria. Ex: Na tabela post uma publicação escolheu a categoria Lentes e ela corresponde ao número 1 (id=2 na tabela post e na tabela categoria). - Os posts foram listados na página inicial e na página blog (com paginação funcionando perfeitamente). O grande problema: - Quando clico, por exemplo, na notícia que tem id=4 sou direcionado para a single-post (página com a notícia completa). Sendo isso não acontece. Sou direcionado sempre para a última notícia cadastrada. Isso acontece em todas páginas que listam as notícias. No painel, na página inicial e na própria página de blog. Também, quando clico na notícia diretamente que é listada na página Blog. Ex: - Notícia 01 tem id=4 - Notícia 02 tem id=5 Elas estão listadas na página inicial, quando clico na notícia 01 (http://localhost/cftv/single-post.php?id=4) sou direcionado para a notícia 02. Na verdade, isso acontece se eu clicar em qualquer notícia. Aparece o link com o id correto no navegador. Mas, a notícia é sempre a última cadastrada. Ex: Código da página Blog, onde as notícias são listadas: <?php $sql = "select * from post p, categoria c where p.cat_id = c.cat_id ORDER BY post_id DESC LIMIT $inicio,$lpp"; $qry = @mysqli_query($conexao, $sql); while ($linha = @mysqli_fetch_array($qry)) { ?> <a href="single-post.php?id=<?php echo $linha["post_id"] ?>"><h2><?php echo $linha["post_title"] ?></h2></a> <br> <img src='<?php echo $linha["post_img"];?>' class="img-responsive" style="height: 200px;" > <br> <p> <?php $text = $linha["post_msg"]; echo substr($text, 0, 300) . '...'; ?> </p> <p> <span class="fa fa-clock-o" style="color: #0098da;"></span><strong> <?php echo $linha["post_data"] ?></strong> <br> <span class="fa fa-file-text-o" style="color: #0098da;"></span><strong> <?php echo $linha["post_tags"] ?></strong> <br> <span class="fa fa-list-ul" style="color: #0098da;"></span><strong> <?php echo $linha["cat_nome"] ?></strong> </p> <p><a href="single-post.php?id=<?php echo $linha["post_id"] ?>" class="btn btn-default default-custom">LER MAIS</a></p> <br> <?php } ?> <?php echo $paginacao; ?> Código da página single-post: <div class="container-fluid" style="background: rgba(0, 0, 0, 0.5); min-height: 150px;"> <div class="container"> <div class="row"> <div class="col-md-12"> <?php $sql = "select * from post p, categoria c where p.cat_id = c.cat_id ORDER BY post_id DESC"; $qry = @mysqli_query($conexao, $sql); $linha = @mysqli_fetch_array($qry); ?> <h2 style="color: #0098da; text-align: center;"><?php echo $linha["post_title"] ?></h2> </div> </div> </div> </div> <div class="container-fluid single-post-row2"> <div class="container"> <div class="row"> <div class="col-md-8 single-post-colleft"> <h2 style="color: #0098da;"><?php echo $linha["post_title"] ?></h2> <img src='<?php echo $linha["post_img"];?>' class="img-responsive" style="width: 100%;" > <br> <span style="color: #f8f8f8;"><?php echo $linha["post_msg"] ?></span> <p> <span class="fa fa-clock-o" style="color: #0098da;"></span><strong> <span style="color: #f8f8f8;"><?php echo $linha["post_data"] ?></span></strong> <br> <span class="fa fa-file-text-o" style="color: #0098da;"></span><strong><span style="color: #f8f8f8;"> <?php echo $linha["post_tags"] ?></span></strong> <br> <span class="fa fa-list-ul" style="color: #0098da;"></span><strong><span style="color: #f8f8f8;"> <?php echo $linha["cat_nome"] ?></span></strong> </p> <br> <div class="fb-comments" data-href="https://facebook.com/infrainfo" data-numposts="5"></div> </div> Agradeço desde já qualquer ajuda.
  19. Faça um programa para calcular a seguinte expressão : S = 1/1 + 3/2 + 5/3 ... 99/50 <?php //número ímpar - numerador $num = (2*$i + 1); //denominador $den = ($i + 1); //S começando com zero $s = 0; //soma irá guardar os valores sequenciais $soma = []; for ($i=0; $i <50; $i++) { $s = $s + ($num/$den); $soma[] = $s; } echo array_sum($soma); ?> O resultado tá meio estranho -> soma de todos denominadores e não a soma do resultado de cada divisão Alguém tem alguma dica? Agradeço desde já ..
  20. jamiel

    Tripla de Pitágoras

    <meta charset="utf-8"> <span id="lista02"> Tripla de Pit&aacute;goras </span> <hr/> <p> Escreva um programa que encontre quatro tripla de Pit&aacute;goras. Uma tripla de Pit&aacute;goras &eacute; uma tripla (a, b, c) de inteiros que satisfazem a equação de Pit&aacute;goras a2 + b2 = c2. Gere randomicamente inteiros no intervalo de 1 a 100. use um comando continue quando a equa&ccedil;&atilde;o for falsa. </p> <form action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="post"> <label id="lista02">a</label> <br> <input type="number" name="a" > <br> <label id="lista02">b</label> <br> <input type="number" name="b" > <br> <label id="lista02">c</label> <br> <input type="number" name="c" > <br> <p> <input type="submit" value="Calcular" name="calc"> </p> </form> <hr> <?php $a = $_POST['a']; $b = $_POST['b']; $c = $_POST['c']; if ( ($a >= 1 && $a <= 100) && ($b >= 1 && $b <= 100) && ($c >= 1 && $c <= 100) ) { if ( ( ($a*$a) == ($b*$b + $c*$c) ) || ( ($b*$b) == ($c*$c + $a*$a) ) || ( ($c*$c) == ($a*$a + $b*$b) ) ) { echo $a*$a. " , " . $b*$b . " , " . $c*$c. " | " . $a."^2" ." = ".$b."^2". " + ". $c."^2"; } } ?> Tentando desenvolver. Mas, me falta conhecimento suficiente. Alguém pode me ajudar? Acredito que entre com alguma estrutura de repetição. Porém, não sei como fazer isso.
  21. Boa Noite!; Tenho um relatório gráfico onde gostaria de gerar um PDF para cada cidade em modo de loop. Exemplo: tenho 10 cidades com dados diferentes, onde o loop percorre as 10 cidades gerando um relatório em pdf para cada uma delas, posteriormente será enviado por e-mail. Caso tenha algo parecido neste fórum, gentileza me passarem o link . Obrigado!
  22. Este simulador de farol criado em linguagem c é uma boa alternativa para um trabalho acadêmico final. Não há nada de complicado no código que usa funções com parâmetros, onde os valores são colocados na chamada. Simples e funcional, este programa impressiona pela simulação tão próxima de um farol de rua, os tempos podem ser controlados a vontade pelo programador, já os mais experientes podem fazer alterações nas janelas para obterem outros tamanhos e formas. Código indcado a iniciantes avançados em c.
  23. renantxrluiz

    Loop

    Olá, Gostaria da ajuda de vocês pra resolver um problema. É o seguinte: Estou desenvolvendo uma ferramenta na qual quero fazer um loop, a variável é o valor de x1, ela varia de 0,01 até h1 (h1 é um dado de entrada) incrementando 0,01 a cada tentativa, para cada valor de x1 são feitos algumas equações e resultam em um valor de R1, o critério a ser atendido é quando R1 for igual a zero. Gostaria de saber quais funções são aplicáveis ao meu problema, pelo que andei lendo, posso utilizar o For Each para o loop, abaixo um rascunho do que pensei, mas ainda não obtive sucesso. Dim list As Integer For x1 = 0.01 To h1.Text For Each x1 As Decimal In list '----equações que dependem de x1 Dim d11 = Val(h1.Text) - Val(cinf.Text) - x1 Dim d21 = x1 - Val(csup.Text) Dim dn1 = (Val(h1.Text) / 2) - x1 Dim Sel1 = st1 - (Val(hm1.Text) * Val(ainf.Text) * d11) + (Val(hm1.Text) * Val(asup.Text) * d21) Dim Iel1 = it1 + (Val(hm1.Text) * Val(ainf.Text) * (d11 ^ 2)) + (Val(hm1.Text) * Val(asup.Text) * (d21 ^ 2)) Dim No1 = (Val(aton.Text) / Sel1) Dim Mo1 = (((Val(atom.Text) * 100) - (Val(aton.Text) * dn1)) / Iel1) Dim R1 = ABS((No1 - Mo1)*1000) '---- fim das equações, o valor a ser comparado é R1 Continue For R1 > 0 Exit For R1 = 0 Abraço.
  24. Boa noite! Preciso implementar uma pagina onde mostra Ementas semanais de um refeitório (em imagem ou tabela). Apenas existem 4 menus diferentes, e estes repetem-se sequencialmente (chegando ao ultimo, volta ao primeiro). Como posso fazer para que tenha a pagina a funcionar correctamente? A minha ideia seria algo do género: Obter numero da semana num mês e consoante fosse 1, 2, 3 ou 4, mostrar a ementa respetiva .. No entanto há meses com mais ou menos que 4 semanas, e ficaria tudo mal. Pensei em obter o numero da semana referente ao ano, e fazer "Semana mod 4" e com o resto da operação tinha o ID da ementa. Mas o ano têm 52,177457 semanas, o que ao fim de algum tempo daria o resultado errado (para alem de que com mudança de ano, poderia falhar. Alguma sugestão?? (nem que seja algoritmo, ideia..) Código feito para obter o numero da semana:
  25. Array ( [0] => Array ( [cod_aluno] => 1498 [cod_trimestre] => 1 [cod_disc] => 430 [aluno] => MIKAEL [cod_turma] => 66 [turma] => 1º V02 [disciplina] => Matemática [nota] => 1.00 ) [1] => Array ( [cod_aluno] => 1498 [cod_trimestre] => 1 [cod_disc] => 507 [aluno] => MIKAEL [cod_turma] => 66 [turma] => 1º V02 [disciplina] => Química [nota] => 1.00 ) [2] => Array ( [cod_aluno] => 1498 [cod_trimestre] => 1 [cod_disc] => 514 [aluno] => MIKAEL [cod_turma] => 66 [turma] => 1º V02 [disciplina] => Filosofia [nota] => 1.00 ) )Tenho um array multidimensional, que é resultado de uma busca no banco de dadosPreciso ordenar de uma forma estruturada...Turma: 1º V02Aluno: MikaelDisciplina ---------- Trim1--------Trim2-------Trim3Matemática --------- 1 ------------ 3 ------------- 5 Química ------------- 1 ------------ 9 ------------- 7 Filosofia ------------- 1 ------------ 5 ------------- 6 Aluno: ViníciusDisciplina ---------- Trim1--------Trim2-------Trim3Matemática --------- 1 ------------ 3 ------------- 5 Química ------------- 1 ------------ 9 ------------- 7 Filosofia ------------- 1 ------------ 5 ------------- 6 *****Turma: 2º V01Aluno: MarcosDisciplina ---------- Trim1--------Trim2-------Trim3Matemática --------- 1 ------------ 3 ------------- 5 Química ------------- 1 ------------ 9 ------------- 7 Filosofia ------------- 1 ------------ 5 ------------- 6 A estrutura do array é essa acimaNote que só uso no exemplo abaixo 1 Trimestre, Um aluno, uma turma e três disciplinasNo resultado geral do banco, esses valores vão variar, ou seja, terei vários alunos, de diversas turmas, com notas variadas em trimestres diferentes e para diversas disciplinas, mas a estrutura do array será a mesma, só aumentará a quantidade de dadosPelo que percebo, precisarei de um loop para as turmas, um loop nos alunos, um loop de disciplinas e outro para notas.Obs.: Esses valores são resultado de um único select - com inner joinQuero evitar várias requisições ao banco, mas talvez seja melhor usar mais que um select... não sei exatamente. A pergunta é, qual a melhor maneira de exibir esses dados na estrutura indicada acima, usando PHP?