Ir para conteúdo
Fórum Script Brasil

Sir John Doe

Membros
  • Total de itens

    8
  • Registro em

  • Última visita

Sobre Sir John Doe

Últimos Visitantes

O bloco dos últimos visitantes está desativado e não está sendo visualizado por outros usuários.

Sir John Doe's Achievements

0

Reputação

  1. Sou estudante de psicologia e a todo momento tenho que fazer tabelas de distribuição. Creio que sim, seu video será de grande ajuda. Obrigado. outra dúvida cruel para uma pessoa que não é da área, uso para compilar e executar meu prg o site https://www.onlinegdb.com/ Como fazer isso no meu pc sendo que posso ver a qualquer momento? Sem depender da web
  2. Primeiro programa python e primeira vez com orientacao a objeto, como melhorar pegando os dados de uma arquivo txt/cvs import math import matplotlib.pyplot as plt class Tabela: def __init__ (self): print ("Tabela de Distribuicao") rol =[10, 20, 30, 40, 50, 60, 70, 80, 90, 100] n = len(rol) li = rol[0] Li = rol[n - 1] AT = Li - li K = int( (1+3.3*math.log10(n)) )+1 h = int((AT / K))+1 fi = 0 xi = 0 fac = 0 fpi = 0 de = li ate = li+h def exibeRol (self): return self.rol def getTam (self): return self.n def getli (self): return self.li def getLi (self): return self.Li def getAT (self): return self.AT def getK (self): return self.K def geth (self): return self.h def corpoTabela(self): de = self.getli() ate = self.getli()+self.h print("-"*58) print ("{:<15} {:<10} {:<10} {:<10} {:<10}".format('Grupo','fi','xi','fac','fpi')) print("-"*58) fac = 0 per = 0 fi = 0 for grupos in range(self.getK()): for todos in range(self.getTam()): if self.rol[todos] >= de and self.rol[todos] < ate : fi += 1 fac = fac + fi xi = (ate + de)/2 fpi = 100 * fi / self.n print ("{:<4}- {:<10} {:<10} {:<10} {:<10} {:<10}".format(de, ate, fi, xi, fac, fpi) ) fi = 0 per = per + fpi de = ate ate = ate + self.h print("-"*58) print ("{:<15} {:<10} {:<11} {:<9} {:<9}".format('',self.n,'', '',per)) return tabela = Tabela() print ("Rol:",tabela.exibeRol()) print (" n:",tabela.getTam()) print (" li:",tabela.getli()) print (" Li:",tabela.getLi()) print (" AT:",tabela.getAT()) print (" K:",tabela.getK()) print (" h:",tabela.geth()) tabela.corpoTabela()
  3. Nunca programei em nada na vida, sou estudante de pscologia e cansado de fazer tabela de distribuicao, fiz esse programa que so funcionou com um rol. Creio que seja por desconhecer como faz calculo com os categorias de variareis float, double, string. Alguém pode me ajudar? #include <stdio.h> #include <stdlib.h> #include <math.h> #define TAM_MAX 10 void imprimirRol( double vetor[TAM_MAX]){ int i; printf("Rol:"); for(i=0; i!=TAM_MAX; i++){ printf("%5.2f,", vetor[i] ); } printf("\n"); } float menor(double tam, double vetor[TAM_MAX]){ int i; double menor = 9999999; for(i=0; i!=tam; i++){ if(vetor[i] < menor){ menor=vetor[i]; } } return menor; } float maior(double tam, double vetor[TAM_MAX]){ int i; double maior; for(i=0; i!=tam; i++){ if(vetor[i] > maior){ maior=vetor[i]; } } return maior; } double pontoMedio(double a, double b){ return (a+b)/2; } double percentualFrequencia(int contador){ return 100*contador/TAM_MAX; } int main(){ int i,j,cont=0,acum, tam; double soma, somaPercentual=0, percentualClasse; double nro_menor, nro_maior, AT, h, K,lim1, lim2; double vet[TAM_MAX] = {1,4,24,25,30,33,39,46,57,60}; soma=0; nro_menor = menor(TAM_MAX, vet); nro_maior = maior(TAM_MAX, vet); AT = nro_maior - nro_menor; K = ceil(1+3.3*log10(TAM_MAX)); h = round(AT/K); printf("Resultados\n\n"); imprimirRol(vet); printf("limite inferior li: %.2f \n", nro_menor); printf("limite superior Li: %.2f \n", nro_maior); printf("Amplitude total AT: %.2f \n", AT); printf("Número total de Classes K: %.2f \n", K); printf("Incremento de classe h: %.2f \n\n", h); lim1=vet[0]; lim2=h+lim1; printf("Tabela de Distribuição\n"); printf("Idade da familia Oliveira\n"); printf("-----------------+-----------+-----------+-----------+------------\n"); printf(" idade | fi | xi | fac | fpi \n"); printf("-----------------+-----------+-----------+-----------+------------\n"); acum=0; for(i=0; i != K; i++){ cont=0; for (j=0; j != 10; j++){ if( vet[j] >= lim1 && vet[j] < lim2){ cont++; } } acum = acum + cont; soma = soma + cont; percentualClasse = percentualFrequencia(cont); somaPercentual = somaPercentual + percentualClasse; printf("%3.0f |= %3.0f | %3d | %5.2f | %3d | %5.2f%% \n", lim1, lim2, cont, pontoMedio(lim1,lim2), acum, percentualClasse) ; lim1=lim2; lim2=lim2+h; percentualFrequencia(cont); } printf("-----------------+-----------+-----------+-----------+------------\n"); printf(" | %3.0f | | | %5.2f%% \n", soma, somaPercentual); printf("-----------------+-----------+-----------+-----------+------------\n"); printf("Fonte: aula prof. Geraldo Magela 24/03/2022\n"); tente com esse rol: double vet[TAM_MAX] = {1,3,18,26,28,31,33,39,46,57,60}; altere a constante #define TAM_MAX 11
×
×
  • Criar Novo...