Précédent   Forum des professionnels en informatique > Autres langages > Algorithmes
Algorithmes Forum d'entraide sur l'algorithmique, l'intelligence artificielle, le traitement numérique d'images et les mathématiques. Avant de poster : Cours d'algorithmique
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/01/2012, 01h33   #1
Invité de passage
 
Inscription : janvier 2012
Messages : 8
Détails du profil
Informations forums :
Inscription : janvier 2012
Messages : 8
Points : 0
Points : 0
Par défaut Extraction de sous-matrices

salut;
s'il vous plait je cherche un algorithme pour l'extraction de sous matrice en utilisant le boucle for.
exemple:
soit une matrice mat= 1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16


je veux extraire par exemple
s_mat= 6 7
10 11

merci d'avance à bientôt
ange84 est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 21/01/2012, 12h27   #2
Expert Confirmé Sénior
 
Jean-Michel BORLOT
Fabricant et casseur d'avions
Inscription : avril 2004
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Jean-Michel BORLOT
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Fabricant et casseur d'avions
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2004
Messages : 2 984
Points : 4 691
Points : 4 691
salut

Code :
1
2
3
4
5
6
7
8
9
// extraction sous-matrice m_ext de matrice m
// premier élément ligne c, colonne d
// dimensions m_ext: hauteur a, largeur b
pour i de 0 à a-1
    pour j de 0 à b-1
        m_ext[i,j]=m[i+c,j+d]
    suivant
suivant
c'était compliqué...
__________________
"Errare humanum est, sed perseverare diabolicum"

Si vous avez un terrain constructible dans l'est du Gers à vendre pas trop cher, contactez-moi par MP.

Ma page sur DVP.com : articles Java/Jogl
Mon site www.plegat.org
plegat est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 21/01/2012, 13h45   #3
Modérateur
 
Avatar de Franck Dernoncourt
 
Homme Franck Dernoncourt
Chercheur en informatique
Inscription : avril 2010
Messages : 807
Détails du profil
Informations personnelles :
Nom : Homme Franck Dernoncourt
Âge : 24
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Chercheur en informatique
Secteur : Enseignement

Informations forums :
Inscription : avril 2010
Messages : 807
Points : 2 408
Points : 2 408
Envoyer un message via ICQ à Franck Dernoncourt Envoyer un message via AIM à Franck Dernoncourt Envoyer un message via MSN à Franck Dernoncourt Envoyer un message via Yahoo à Franck Dernoncourt Envoyer un message via Skype™ à Franck Dernoncourt
Citation:
Envoyé par plegat Voir le message
c'était compliqué...
Une nuit entière de réflexion comme je peux le voir aux horaires des posts
Franck Dernoncourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/01/2012, 15h22   #4
Expert Confirmé Sénior
 
Jean-Michel BORLOT
Fabricant et casseur d'avions
Inscription : avril 2004
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Jean-Michel BORLOT
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Fabricant et casseur d'avions
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2004
Messages : 2 984
Points : 4 691
Points : 4 691
Citation:
Envoyé par Franck Dernoncourt Voir le message
Une nuit entière de réflexion comme je peux le voir aux horaires des posts
J'ai été retardé chez ma coiffeuse, c'est elle qui m'a donné le déclic!
__________________
"Errare humanum est, sed perseverare diabolicum"

Si vous avez un terrain constructible dans l'est du Gers à vendre pas trop cher, contactez-moi par MP.

Ma page sur DVP.com : articles Java/Jogl
Mon site www.plegat.org
plegat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2012, 18h31   #5
Invité de passage
 
Inscription : janvier 2012
Messages : 8
Détails du profil
Informations forums :
Inscription : janvier 2012
Messages : 8
Points : 0
Points : 0
Bonjour à tous


en fait je suis en train d'écrire une fonction en utilisant le logiciel matlab qui aura par exemple en entrée la matrice A :

A=
1 2 3 4 2 1
2 0 0 0 0 0
3 0 0 0 0 0
4 0 0 0 0 0
5 0 0 0 0 0
6 1 1 2 1 2
7 2 3 4 5 6

et en sortie elle me renvoie la matrice S:

S =

1 2 3 4 2 1
6 1 1 2 1 2
7 2 3 4 5 6

j'ai fais ça pour commencer:

Code matlab :
1
2
3
4
5
6
7
8
9
10
[var =1;
for i = 1 : 7
    
    
    if A(i,2)>0
        p(var,: )=A(i,: )
      var=var+1
    end
    end
]

cela marche très bien. le problème je voulais le même principe mais sans utiliser la fonction ( : ) qui est inclus dans p(var,: )=A(i,: ).
quelqu'un aurait une idée s'il vous plait pour régler ça?
ange84 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2012, 18h35   #6
Modérateur
 
Avatar de Franck Dernoncourt
 
Homme Franck Dernoncourt
Chercheur en informatique
Inscription : avril 2010
Messages : 807
Détails du profil
Informations personnelles :
Nom : Homme Franck Dernoncourt
Âge : 24
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Chercheur en informatique
Secteur : Enseignement

Informations forums :
Inscription : avril 2010
Messages : 807
Points : 2 408
Points : 2 408
Envoyer un message via ICQ à Franck Dernoncourt Envoyer un message via AIM à Franck Dernoncourt Envoyer un message via MSN à Franck Dernoncourt Envoyer un message via Yahoo à Franck Dernoncourt Envoyer un message via Skype™ à Franck Dernoncourt
Code matlab :
A(~all(A,2),:)=[]
Franck Dernoncourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2012, 18h55   #7
Invité de passage
 
Inscription : janvier 2012
Messages : 8
Détails du profil
Informations forums :
Inscription : janvier 2012
Messages : 8
Points : 0
Points : 0
oui cela fonctionne très bien mais moi je voulais le programme en utilisant le boucle for sans utiliser les fonction prédéfinie de MATLAB
ange84 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2012, 19h11   #8
Modérateur
 
Avatar de Franck Dernoncourt
 
Homme Franck Dernoncourt
Chercheur en informatique
Inscription : avril 2010
Messages : 807
Détails du profil
Informations personnelles :
Nom : Homme Franck Dernoncourt
Âge : 24
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Chercheur en informatique
Secteur : Enseignement

Informations forums :
Inscription : avril 2010
Messages : 807
Points : 2 408
Points : 2 408
Envoyer un message via ICQ à Franck Dernoncourt Envoyer un message via AIM à Franck Dernoncourt Envoyer un message via MSN à Franck Dernoncourt Envoyer un message via Yahoo à Franck Dernoncourt Envoyer un message via Skype™ à Franck Dernoncourt
for est une fonction prédéfinie de MATLAB....
Franck Dernoncourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2012, 19h21   #9
Invité de passage
 
Inscription : janvier 2012
Messages : 8
Détails du profil
Informations forums :
Inscription : janvier 2012
Messages : 8
Points : 0
Points : 0
oui bien sur mais c'est à dire la programmation sera prise en main comme on fait en langage c . mon problème exactement de changer la fonction ( : ) que j'ai utilisé dans le code précédent par une autre instruction
ange84 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2012, 19h27   #10
Modérateur
 
Avatar de Franck Dernoncourt
 
Homme Franck Dernoncourt
Chercheur en informatique
Inscription : avril 2010
Messages : 807
Détails du profil
Informations personnelles :
Nom : Homme Franck Dernoncourt
Âge : 24
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Chercheur en informatique
Secteur : Enseignement

Informations forums :
Inscription : avril 2010
Messages : 807
Points : 2 408
Points : 2 408
Envoyer un message via ICQ à Franck Dernoncourt Envoyer un message via AIM à Franck Dernoncourt Envoyer un message via MSN à Franck Dernoncourt Envoyer un message via Yahoo à Franck Dernoncourt Envoyer un message via Skype™ à Franck Dernoncourt
Pourquoi ne veux-tu pas utiliser ( : ) ? C'est juste une boucle implicite.
Franck Dernoncourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2012, 19h38   #11
Invité de passage
 
Inscription : janvier 2012
Messages : 8
Détails du profil
Informations forums :
Inscription : janvier 2012
Messages : 8
Points : 0
Points : 0
justement je veux pas utiliser les boucles implicites parce que par la suite je vais changer la programmation par un autre langage très proche de langage C
ange84 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2012, 19h39   #12
Modérateur
 
Avatar de Franck Dernoncourt
 
Homme Franck Dernoncourt
Chercheur en informatique
Inscription : avril 2010
Messages : 807
Détails du profil
Informations personnelles :
Nom : Homme Franck Dernoncourt
Âge : 24
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Chercheur en informatique
Secteur : Enseignement

Informations forums :
Inscription : avril 2010
Messages : 807
Points : 2 408
Points : 2 408
Envoyer un message via ICQ à Franck Dernoncourt Envoyer un message via AIM à Franck Dernoncourt Envoyer un message via MSN à Franck Dernoncourt Envoyer un message via Yahoo à Franck Dernoncourt Envoyer un message via Skype™ à Franck Dernoncourt
Pourquoi ne pas coder directement dans le langage qui t'intéresse ?
Franck Dernoncourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2012, 19h53   #13
Invité de passage
 
Inscription : janvier 2012
Messages : 8
Détails du profil
Informations forums :
Inscription : janvier 2012
Messages : 8
Points : 0
Points : 0
en fait je utilise matlab parce que c'est très facile pour la programmation en traitement image. mais comme j'ai vous dit prise en main. par la suite je vais utiliser un autre logiciel avec un langage très proche de C dans le but implémentation matérielle. au cours de la programmation j'ai pas pu résoudre le genre de boucle implicite par une autre instruction.
ange84 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2012, 20h01   #14
Modérateur
 
Avatar de Franck Dernoncourt
 
Homme Franck Dernoncourt
Chercheur en informatique
Inscription : avril 2010
Messages : 807
Détails du profil
Informations personnelles :
Nom : Homme Franck Dernoncourt
Âge : 24
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Chercheur en informatique
Secteur : Enseignement

Informations forums :
Inscription : avril 2010
Messages : 807
Points : 2 408
Points : 2 408
Envoyer un message via ICQ à Franck Dernoncourt Envoyer un message via AIM à Franck Dernoncourt Envoyer un message via MSN à Franck Dernoncourt Envoyer un message via Yahoo à Franck Dernoncourt Envoyer un message via Skype™ à Franck Dernoncourt
ok comme tu veux. Il suffit de parcourir chaque ligne et pour chaque ligne détecter la présence d'un 0... mais je ne compte pas m'amuser avec des boucles explicites dans MATLAB pour une tâche aussi basique, donc je laisse à quelqu'un d'autre la joie de t'aider dans ce problème.
Franck Dernoncourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2012, 20h07   #15
Invité de passage
 
Inscription : janvier 2012
Messages : 8
Détails du profil
Informations forums :
Inscription : janvier 2012
Messages : 8
Points : 0
Points : 0
merci bien quand même pour votre intervention vous êtes très gentil à bientôt
ange84 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/03/2012, 10h11   #16
Expert Confirmé Sénior
 
Inscription : janvier 2007
Messages : 8 740
Détails du profil
Informations personnelles :
Âge : 54

Informations forums :
Inscription : janvier 2007
Messages : 8 740
Points : 9 963
Points : 9 963
Citation:
Envoyé par ange84 Voir le message
en fait je utilise matlab parce que c'est très facile pour la programmation en traitement image. mais comme j'ai vous dit prise en main. par la suite je vais utiliser un autre logiciel avec un langage très proche de C dans le but implémentation matérielle. au cours de la programmation j'ai pas pu résoudre le genre de boucle implicite par une autre instruction.
c'est pas franchement plus difficile en C :


Code C :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int i, j, tot, var=0 ;
 
for ( i = 0 ; i < NLignes ; i++ )
  {
     tot = 0 ;
     for ( j = 0 ; j < NCol ; j++ )
        if ( A[i][j] != 0 )
           tot = tot +1 ;
 
     if ( tot == NCol )
        {
             for ( j = 0 ; j < NCol ; j++ )
                B[var,j] = A[i][j] ;
 
             var = var + 1 ;
        }
  }
__________________
"Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

Consultant indépendant.
Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
C, Fortran, XWindow/Motif, Java

Je ne réponds pas aux MP techniques
souviron34 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 20/03/2012, 18h08   #17
Invité de passage
 
Inscription : janvier 2012
Messages : 8
Détails du profil
Informations forums :
Inscription : janvier 2012
Messages : 8
Points : 0
Points : 0
ouiiiiii ça marche très bien .......
je tiens à vous remercier souviron34 pour le coup de pouce que vous m'avez donnée...... à bientôt
ange84 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/03/2012, 01h02   #18
Modérateur
 
Avatar de Franck Dernoncourt
 
Homme Franck Dernoncourt
Chercheur en informatique
Inscription : avril 2010
Messages : 807
Détails du profil
Informations personnelles :
Nom : Homme Franck Dernoncourt
Âge : 24
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Chercheur en informatique
Secteur : Enseignement

Informations forums :
Inscription : avril 2010
Messages : 807
Points : 2 408
Points : 2 408
Envoyer un message via ICQ à Franck Dernoncourt Envoyer un message via AIM à Franck Dernoncourt Envoyer un message via MSN à Franck Dernoncourt Envoyer un message via Yahoo à Franck Dernoncourt Envoyer un message via Skype™ à Franck Dernoncourt
Au passage, il est possible de générer du code C et C++ à partir de MATLAB et Simulink : http://www.mathworks.fr/help/toolbox/eml/
Franck Dernoncourt est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h07.


 
 
 
 
Partenaires

Hébergement Web