IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

Méthode pour la construction de mon algo ou boucle


Sujet :

Algorithmes et structures de données

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juillet 2014
    Messages : 14
    Points : 5
    Points
    5
    Par défaut Méthode pour la construction de mon algo ou boucle
    Bonjour tous le monde,

    Je ne sais pas trop si je suis sur le bon forum mais bon je me lance.

    Mise en situation :
    Je suis en train d'assembler des médias pour l'affichage sur des écrans.
    Chaque écran fait 100x100 pixels.
    J'ai 4 grappes d'écrans : 1 grappe de 2, 1 grappe de 3, 1 grappe de 4 et 1 grappe de 5
    Donc maximum d'écrans : 5
    Maximum de médias en entrée : 5
    Je programme en pascal sur Lazarus.
    Je n'encode pas forcément pour toutes les grappes et mon nombre de média est variable de 1 à 5.
    J'encode grappe par grappe.
    J'ai une variable "NbEcranGrappe" qui me permet de savoir combien j'ai d'écrans dans ma grappe.
    J'ai une variable "NbMediaSource" qui me permet de savoir combien j'ai de médias source.
    Je cherche une solution (Surement un Algo) pour faire suivant le nombre d'écrans et le nombre de médias l'assemblage.

    Exemple 1 :
    5 écrans 1 médias
    Sortie 500x100 pixels soit 5 fois le médias 1

    Exemple 2 :
    5 écrans 2 médias
    Sortie 500x100 pixels soit média 1 + média 2 + média 1 + média 2 + média 1

    Exemple 3 :
    4 écrans 3 médias
    Sortie 400x100 pixels soit média 1 + média 2 + média 3 + média 1

  2. #2
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    538
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 538
    Points : 262
    Points
    262
    Par défaut
    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    public class main {
        public static void main(String[] args) {
            assemblage(5, 1);
            assemblage(5, 2);
            assemblage(4, 3);
        }
     
        private static void assemblage(int NbEcranGrappe, int NbMediaSource) {
            for (int i = 0; i < NbEcranGrappe; ++i) {
                System.out.print(" + média " + (i % NbMediaSource + 1));
            }
            System.out.println();
        }
    }

  3. #3
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 421
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 421
    Points : 5 820
    Points
    5 820
    Par défaut
    salut
    une simple boucle avec la fonction mod (le reste d'une division) devrais largement suffire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Procedure assemblage(NbEcranGrappe,NbMediaSource : Integer);
    var 
      ibGrappe : integer; 
    begin
        st := '';
        for ibGrappe := 0 to pred(NbEcranGrappe) do 
            st :=  st+ Format(' média %d +',[((i mod NbMediaSource) + 1)]);
        writeln(copy(st,1,length(st)-1)); // ici on enlève le dernier + 
    end;
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

  4. #4
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    538
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 538
    Points : 262
    Points
    262
    Par défaut
    Sans vouloir être méchant, ça m'inquiète un peu lorsque je vois un développeur ne sachant pas écrire une fonction de 3 lignes

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Juillet 2014
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juillet 2014
    Messages : 14
    Points : 5
    Points
    5
    Par défaut
    Salut et merci a vous deux pour vos réponses.

    Je vais tester vos méthodes.

    CliffeCSTL :
    Aucun problème pour moi. J'ai juste utilisé une autre méthode mais qui ne faisais pas 3 lignes donc pour optimiser je demande et j'apprends.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 26/06/2016, 22h05
  2. Algo et méthodes pour resoudre le problème de job shop
    Par lolita24 dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 02/05/2012, 10h14
  3. Réponses: 14
    Dernier message: 08/07/2011, 23h10
  4. Bonne méthode pour parser mon xml
    Par scaleo dans le forum Windows Forms
    Réponses: 2
    Dernier message: 09/07/2007, 09h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo