[Off] [Desafio] Ordenar matrizes
#1

Objetivo: Organizar a matriz dada de acordo com o formatou: matou-morreu. O mesmo efeito do statement SQL: ORDER BY (`matou` - `morreu`). E no final imprimir, na ordem citada a cima, [b]Nome - Matou - Morreu - Total (matou - morreu)

Base da matriz:
Код:
matriz[0]['nome'] = 'Joaquim'
matriz[0]['matou'] = 200
matriz[0]['morreu'] = 100

matriz[1]['nome'] = 'Cledomar'
matriz[1]['matou'] = 230
matriz[1]['morreu'] = 30

matriz[2]['nome'] = 'Sandoval'
matriz[2]['matou'] = 210
matriz[2]['morreu'] = 7

matriz[3]['nome'] = 'Genivaldo'
matriz[3]['matou'] = 200
matriz[3]['morreu'] = 190

matriz[4]['nome'] = 'Leticia'
matriz[4]['matou'] = 300
matriz[4]['morreu'] = 10
Como podem ver a matriz estб de forma aleatуria. Vocкs DEVEM utilizar nessa ordem os dados, e fazer uma lуgica para organizar esses dados de acordo com a fуrmula (matou-morreu).

Valor a ser exibido
Quote:

Leticia - 300 - 10 | 290
Sandoval - 210 - 7 | 203
Cledomar - 230 - 30 | 200
Joaquim - 200 - 100 | 100
Genivaldo - 200 - 190 | 10

Esse desafio й um pouco mais complexo. Vamos ver quem й a galera que realmente programa aqui. Abraзos
Reply
#2

# Entendi.

Pode ser feito em qualquer linguagem? ( C# )
Reply
#3

Quote:
Originally Posted by Cor3y
Посмотреть сообщение
# Entendi.

Pode ser feito em qualquer linguagem? ( C# )
Sim qualquer uma

Esse desafio terб pouca gente participando por ser mais complexo mas й bom que da pra ver quem й que sabe pensar aqui :P
Reply
#4

Quote:
Originally Posted by JoaoPedro
Посмотреть сообщение
Sim qualquer uma

Esse desafio terб pouca gente participando por ser mais complexo mas й bom que da pra ver quem й que sabe pensar aqui :P
Ah, entгo se, por exemplo, 99% da board PT/BR nгo responder, й porque nгo sabe?
Se for, nгo me leves a mal, mas nunca pensei que a *mania* de *ser o melhor de todos* te tinha subido а cabeзa.
Reply
#5

Quote:
Originally Posted by Kikito
Посмотреть сообщение
Ah, entгo se, por exemplo, 99% da board PT/BR nгo responder, й porque nгo sabe?
Se for, nгo me leves a mal, mas nunca pensei que a *mania* de *ser o melhor de todos* te tinha subido а cabeзa.
Vocк merece entrar na Academia de Letras pelo brilhante raciocнnio.
Reply
#6

PAWN

pawn Код:
#include a_samp

enum info {
    nome[25],
    matou,
    morreu
};

new dados[][info] = {
    {"margarete", 200, 100 },
    {"josima", 500, 10 },
    {"igor", 10, 200 },
    {"emerson", 1000, 2 },
    {"shenon", 30, 2 },
    {"escroxilda", 400, 900 }
};

public OnFilterScriptInit() {

    for(new i = 0; i < sizeof(dados); i++) {

        new index = i;

        for(new y = (i + 1); y < sizeof(dados); y++)
            if(dados[index][matou] - dados[index][morreu] < dados[y][matou] - dados[y][morreu])
                index = y;

        new auxINT[2], auxSTR[25];

        format(auxSTR, 25, dados[index][nome]);
        auxINT[0] = dados[index][matou];
        auxINT[1] = dados[index][morreu];

        format(dados[index][nome], 25, dados[i][nome]);
        dados[index][matou] = dados[i][matou];
        dados[index][morreu] = dados[i][morreu];

        format(dados[i][nome], 25, auxSTR);
        dados[i][matou] = auxINT[0];
        dados[i][morreu] = auxINT[1];

    }


    //print da matriz jб ordenada
    printf("%s", "\n\n\n");

    for(new i; i < sizeof(dados); i++)
        printf("%s - %i - %i | %i\n", dados[i][nome], dados[i][matou], dados[i][morreu], dados[i][matou]-dados[i][morreu]);

    printf("%s", "\n\n\n");
    return 1;
}
Resultado:
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)