Ir ao conteúdo

Gabiruhfsa

Membro Pleno
  • Posts

    20
  • Cadastrado em

  • Última visita

posts postados por Gabiruhfsa

  1. Olá Pessoal, é o seguinte...
     
    Tem uns dois meses que entrei em um projeto aqui do Instituto para fazer um software para gerenciamento do fluxo de visitantes do meu Campus, além de adicionar, alterar ou excluir esses visitantes, o software também poderia realizar o compilamento de relatórios por data ou por nome de pessoas...
     
    Ao gerar o relatório por datas, ele imprime normalmente, assim como o relatório por pessoa...
     
    Porém, quando exporto o programa para .jar e executo em outro computador, ele imprime apenas o relatório por data, pois não é necessário colocar o subdiretório dentro do arquivo .jrxml, ao contrário do relatório por pessoa, que não imprime, pois depende de um subdiretório, sendo que o mesmo já vem pré-definido pelo programa iReport.
     
    Espero que me ajudem!
     

    Código Java:

    JasperReport report = JasperCompileManager.compileReport("relatorios/relatorioNome.jrxml");JasperReport reportSub = JasperCompileManager.compileReport("relatorios/relatorioNome_subreport.jrxml");Map<String, Object> parametro = new HashMap<String, Object>();//   parametro.put("SUBREPORT_DIR", reportSub);//   parametro.put("listFluxo", lista.get(0).getListFluxo());JasperPrint print = JasperFillManager.fillReport(report, null, new JRBeanCollectionDataSource(lista));

     

    Relatório Master:

    <parameter name="SUBREPORT_DIR" class="java.lang.String">	<defaultValueExpression><![CDATA["relatorios\\"]]></defaultValueExpression></parameter>.....<subreport>	<reportElement x="0" y="0" width="555" height="76" uuid="adc1ef25-58d3-4ff1-b108-46b181292c16"/>	<dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{listFluxo})]]></dataSourceExpression>	<subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "relatorioNome_Subreport.jasper"]]></subreportExpression></subreport>

     
    Não irei mandar o Subrelatório porque não existe nenhuma configuração de diretório nele.

  2. Tenta criar uma estrutura com os campos nome, média, e notas (notas vai ser um vetor de comprimento 10). Depois você cria um vetor dessas estruturas com o tamanho dos alunos, no caso 20. Dessa forma vai ficar mais simples de fazer.

    Ali no seu for, você teria que colocar apenas "<", pois se colocar <= estará adicionando 21 alunos. Repare que seu contador começa em 0. Para a porcentagem você pode usar uma variável para ir marcando sempre que um aluno for aprovado, isso você sabe usando o if. porcentagem = alunosAprovados/numeroAlunos.

    Um jeito de fazer o que você deseja, é voce ir "guardando" o valor que media vai receber no final de cada Laço. mediaTurma = media/numeroAlunos (no caso 20). Cuidado onde você vai colocar esse mediaTurma..

    Tenta fazer a partir dessa dicas.

    ---

    FellipeDF valeu aii, mas eu não entendi aonde eu coloco o IF que você disse..

    Mas o resto ta de boa...

  3. O que você fez? Porque esse problema não é tão complicado assim.

    A ideia é usar um vetor de estruturas, ou um vetor bidimensional. Ai você faz o laço de iteração se baseando nisso.

    ---

    cara eu fiz assim...

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>

    int main () {
    char nome[50];
    float LIM=20, soma=0.0, media, mediaTurma;
    float a, b, c, d, e, f, g, h, i, j;
    int x, y;
    for (x=0; x<=LIM;x++){
    printf("Digite o nome do aluno:\t");
    scanf("%s", nome);
    printf("\nNota 1:");
    scanf("%f", &a);
    printf("Nota 2:");
    scanf("%f", &;
    printf("Nota 3:");
    scanf("%f", &c);
    printf("Nota 4:");
    scanf("%f", &d);
    printf("Nota 5:");
    scanf("%f", &e);
    printf("Nota 6:");
    scanf("%f", &f);
    printf("Nota 7:");
    scanf("%f", &g);
    printf("Nota 8:");
    scanf("%f", &h);
    printf("Nota 9:");
    scanf("%f", &i);
    printf("Nota 10:");
    scanf("%f", &j);
    soma=a+b+c+d+e+f+g+h+i+j;
    media=soma/10;
    if (media>=5) {
    printf("Aluno aprovado! Media %f\n", media);
    }
    else {
    printf("Aluno reprovado! Media %f\n", media);
    }
    printf("-----------------------------\n\n");
    }
    system("PAUSE");
    return 0;
    }

    Até aqui eu fiz a média do aluno, só falta fazer a média da turma e a porcentagem...

    Se puder me ajudar cm esse problema!

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!