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 :

Procédures et Fonctions, Tableaux et Structures


Sujet :

Algorithmes et structures de données

  1. #1
    Nouveau Candidat au Club
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    2
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Procédures et Fonctions, Tableaux et Structures
    à tous,

    je suis étudiant en L1 de Sciences pour l'ingénieur et ai à rendre un TD sur les procédures et fonctions. Sur les 10 exercices, il y en a 3 que j'arrive vraiment pas à faire, ne sait pas comment commencer, je m'en sors vraiment pas et suis un peu désespéré...

    Voici les énoncés :

    1) Soient deux tableaux V et U d'entiers de dimension N et de composants V1,...,Vn et U1,...,Un respectivement. Calculer le produit scalaire : PS=V1*U1 + V2*U2 + ... + Vn*Un.

    2) Soit un tableau TAB de N composantes entières, ranger dans le même tableau les éléments dans l'ordre inverse :
    TAB : 1 2 3 0 4 -1 2
    Est transformé en TAB : 2 -1 4 0 3 2 1

    3) Ecrire un algorithme permettant d'effectuer les calculs sur les nombres complexes, au moyen d'un type d'enregistrement.

    Type C = Structure
    P_reel : réel
    P_img : réel
    FinStructure

    On utilisera les formules de calcul suivantes :
    Addition : (a + bi) + (c + di) = (a + c) + (b + d)*i
    Soustraction : (a + bi) - (c + di) = (a - c) + (b - d)*i
    Multiplication : (a + bi)(c + di) = (ac - bd) + (ad + bc)*i
    Division : (a + bi)/(c + di) = ((ac + bd)/(c^2 + d^2)) + ((bc - ad)/(c^2 + d^2))*i


    Ca serait fort sympathique de votre part de me proposer des solutions à ces problèmes d'algorithmie

    Merci par avance

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 371
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 371
    Points : 23 626
    Points
    23 626
    Par défaut
    Je ne vois pas vraiment où est le problème : soit c'est un problème appliqué à un langage (le C ?) et, dans ce cas, ce n'est pas le bon forum (thread à déplacer), soit c'est bien les algos que tu cherches et là, tu les as pour ainsi dire déjà donnés :

    Citation Envoyé par Pampasgiolu Voir le message
    1) Soient deux tableaux V et U d'entiers de dimension N et de composants V1,...,Vn et U1,...,Un respectivement. Calculer le produit scalaire : PS=V1*U1 + V2*U2 + ... + Vn*Un.
    Tu prends une variable i servant d'indice et tu la fais boucler de 0 à n, tu additionnes Un et Vn, et tu multiplies le sous total avec le contenu d'un accumulateur : x = x * SousTotal.

    2) Soit un tableau TAB de N composantes entières, ranger dans le même tableau les éléments dans l'ordre inverse :
    TAB : 1 2 3 0 4 -1 2
    Est transformé en TAB : 2 -1 4 0 3 2 1
    Même chose : soit tu utilises un second tableau de même dimension pour stocker le résultat (peu efficace en terme de mémoire), soit tu pars d'une extrémité du tableau et tu regagnes le milieu en permutant les cases homologues (la première et la dernière, la seconde et l'avant-dernière, etc.).

    3) Ecrire un algorithme permettant d'effectuer les calculs sur les nombres complexes, au moyen d'un type d'enregistrement.

    Type C = Structure
    P_reel : réel
    P_img : réel
    FinStructure

    On utilisera les formules de calcul suivantes :
    Addition : (a + bi) + (c + di) = (a + c) + (b + d)*i
    Soustraction : (a + bi) - (c + di) = (a - c) + (b - d)*i
    Multiplication : (a + bi)(c + di) = (ac - bd) + (ad + bc)*i
    Division : (a + bi)/(c + di) = ((ac + bd)/(c^2 + d^2)) + ((bc - ad)/(c^2 + d^2))*i
    Et bien, pour chaques parenthèses, tu remplaces a par C.p_reel et bi par C.P_img, et le tour est joué.

  3. #3
    Nouveau Candidat au Club
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    2
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci beaucoup je vais voir ça dans l'après-midi.

    En fait mon problème se situait plus dans la forme que dans le fond, par exemple je n'ai aucune idée de comment utiliser un type d'enregistrement...

Discussions similaires

  1. Tableaux et procédures ou fonctions
    Par Invité dans le forum Pascal
    Réponses: 1
    Dernier message: 06/03/2008, 14h53
  2. Réponses: 3
    Dernier message: 22/03/2006, 15h38
  3. Réponses: 6
    Dernier message: 14/02/2006, 11h29
  4. Mysql5: différences entre procédures et fonctions
    Par El Riiico dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 25/11/2005, 05h43
  5. Réponses: 5
    Dernier message: 14/10/2005, 12h11

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