Jump to content
Fórum Script Brasil
  • 0

(Resolvido) Comparar strings


gersonab

Question

Qual a melhor forma de se compara uma string ?

tenho 5 valores , quero descartar o menor e somar os 4 maiores, para fazer uma média .

Tipo:

$valor1 = $row_notas['bim_bim1'];
$valor2 = $vendas['bim_bim2'];
$valor3 = $vendas['bim_bim3'];
$valor4 = $vendas['bim_bim4'];
$valor5 = $vendas['bim_bim5'];

$bim1 = $valor1;
$bim2 = $valor1 + $valor2;
$bim3 = $valor1 + $valor2 + $valor3;
$bim4 = $valor1 + $valor2 + $valor3 + $valor4;

$media1 = $bim1;
$media2 = $bim2 / 2;
$media3 = $bim3 / 3;
$media4 = $bim4 / 4;

Desde já agradeço.

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Quase perfeito ....

esta assim :

$valor1 = $row_notas['bim_bim1'];
$valor2 = $row_notas['bim_bim2'];
$valor3 = $row_notas['bim_bim3'];
$valor4 = $row_notas['bim_bim4'];
$valor5 = $row_notas['bim_bim5'];

$bim1 = $valor1;
$bim2 = $valor1 + $valor2;
$bim3 = $valor1 + $valor2 + $valor3;
$bim4 = $valor1 + $valor2 + $valor3 + $valor4;
$bim5 = array($valor1,$valor2,$valor3,$valor4,$valor5);
sort($bim5); // ordena em ordem crescente
array_shift($bim5); // elimina o primeiro "menor"
$med5 = array_sum($bim5); // soma os valores do array

$media1 = $bim1;
$media2 = $bim2 / 2;
$media3 = $bim3 / 3;
$media4 = $bim4 / 4;
$media5 = $med5 / 4;

Só que , se eu tenho 10 itens para mostrar em uma lista , me mostra só 4, preciso que me mostre os 10 com seus respectivos valores .... tipo :

item --- valor 1 ---- valor 2 ---- valor 3 ---- valor 4 ---- valor 5 ----- media

- 01 ----- 50 --------- 60 --------- 40 --------- 50 --------- 60 --------- 55

- 02 ----- 60 --------- 60 --------- 60 --------- 60 --------- 00 --------- 60

- 03 ----- 70 --------- 60 --------- 30 --------- 50 --------- 60 --------- 55

- 04 ----- 70 --------- 50 --------- 40 --------- 50 --------- 60 --------- 55

- 05 ----- 50 --------- 60 --------- 70 --------- 60 --------- 00 --------- 60

- 06 ----- 50 --------- 60 --------- 40 --------- 50 --------- 60 --------- 55

- 07 ----- 50 --------- 60 --------- 40 --------- 50 --------- 60 --------- 55

- 08 ----- 50 --------- 60 --------- 40 --------- 50 --------- 60 --------- 55

- 09 ----- 50 --------- 60 --------- 40 --------- 50 --------- 60 --------- 55

- 10 ----- 50 --------- 60 --------- 40 --------- 50 --------- 60 --------- 55

esta mostrando assim ...

item --- valor 1 ---- valor 2 ---- valor 3 ---- valor 4 ---- valor 5 ----- media

- 05 ----- 50 --------- 60 --------- 70 --------- 60 --------- 00 --------- 60

- 02 ----- 60 --------- 60 --------- 60 --------- 60 --------- 00 --------- 60

- 01 ----- 50 --------- 60 --------- 40 --------- 50 --------- 60 --------- 55

- 03 ----- 70 --------- 60 --------- 30 --------- 50 --------- 60 --------- 55

Isto é, tudo que é array , ele esta mostrando só os 4 melhores ....

Link to comment
Share on other sites

  • 0

Pois é ... ta um pouco complicado aqui ... vou tentar ser mais claro ...

Os valores vem do BD .

A lista é criada através de um loop .

O que eu preciso é que :

1) pegar o item 1 verificar os 5 indices (arrays ) , considerar os 4 maiores para se fazer uma média , depois ...

2) pegar o item 2 verificar os 5 indices (arrays ) , considerar os 4 maiores para se fazer uma média , depois ...

3) pegar o item 3 verificar os 5 indices (arrays ) , considerar os 4 maiores para se fazer uma média , depois ...

4) pegar o item 4 verificar os 5 indices (arrays ) , considerar os 4 maiores para se fazer uma média , depois ...

5) pegar o item 5 verificar os 5 indices (arrays ) , considerar os 4 maiores para se fazer uma média , depois ...

....

11) pegar o item 11 verificar os 5 indices (arrays ) , considerar os 4 maiores para se fazer uma média , depois ...

Não tem quantidade exata de itens ...

Agora, com certeza vou precisar criar esta função , começar por onde ?

if ? case ? foreach ?

Link to comment
Share on other sites

  • 0
Pois é ... ta um pouco complicado aqui ... vou tentar ser mais claro ...

Os valores vem do BD .

A lista é criada através de um loop .

O que eu preciso é que :

1) pegar o item 1 verificar os 5 indices (arrays ) , considerar os 4 maiores para se fazer uma média , depois ...

2) pegar o item 2 verificar os 5 indices (arrays ) , considerar os 4 maiores para se fazer uma média , depois ...

3) pegar o item 3 verificar os 5 indices (arrays ) , considerar os 4 maiores para se fazer uma média , depois ...

4) pegar o item 4 verificar os 5 indices (arrays ) , considerar os 4 maiores para se fazer uma média , depois ...

5) pegar o item 5 verificar os 5 indices (arrays ) , considerar os 4 maiores para se fazer uma média , depois ...

....

11) pegar o item 11 verificar os 5 indices (arrays ) , considerar os 4 maiores para se fazer uma média , depois ...

Não tem quantidade exata de itens ...

Agora, com certeza vou precisar criar esta função , começar por onde ?

if ? case ? foreach ?

olá tudo bem, tente algo mais ou menos assim

<?php

$Array=array(
             'Luciano'=>array(10,8,5,9,5),
             'Ricardo'=>array(9,7,8,3,8),
             'Valéria'=>array(6,9,10,8,4),
             'Adriano'=>array(7,4,8,10,10),
             'Mariana'=>array(10,09,1,0,10),
             'Marlene'=>array(9,8,4,10,10),
             'Gislene'=>array(8,6,10,9,7),
             'Ketlein'=>array(7,10,8,5,8),
             'Robison'=>array(6,9,10,7,4),
             'Ronaldo'=>array(10,8,6,5,10)
             );
             
$Tabela="<table style='background-color:#008000;'><tr align='center' style='background-color:#004000; color:#FFFFFF; font:bold 16 arial;'>
                    <Td>Alunos</td><td colspan='4'>Notas</td><Td>Média total</td>
                </tr>
                ";
$i=0;
foreach($Array as $Nome=>$Aluno)
       {
        ( ($i%2)<0 ) ? ( $cor='#FFFFC0' ) : ( $cor='#D0D0D0' );
        sort($Aluno);
        $Tabela.="<tr bgcolor='$cor'><Td>$Nome</td>";
        $Nota=0;
        for($i=1; $i<count($Aluno); $i++)
           {
            $Tabela.="<td>$Aluno[$i]</td>";
            $Nota+=$Aluno[$i];
           }

        $Tabela.="<td>$Nota</td></tr>";
        $i++;
       }
       
echo $Tabela;
?>

qualquer duvida é so postar até mais.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...