Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : chaine de caractere [ Algorithme / Maths ] (krim43)

lundi 30 juin 2008 à 16:09:53 | chaine de caractere

krim43

bonjour,
voila mon probleme:
créer une fonction strbrk qui retire de str1 les caracteres contenus dans str2 et retourne le resultat.

voila le code que j'ai fait, mais le problem c'est qu'il me retourne les caracteres qui sont seulement a la meme place.

static void Main(string[] args)
        {
            Console.WriteLine("entrez un premier mot");
            string str1 = Console.ReadLine();
            Console.WriteLine("entez un deuxieme mot");
            string str2 = Console.ReadLine();
            string str3 = "";
            strpbrk(str1,str2,str3);

        }
        private static void strpbrk(string str1,string str2,string str3)
        {
            int i = 0;
            int j = 0;
           
           
            if (str1.Substring(j, 1) == str2.Substring(i, 1))
            {
                Console.WriteLine(str1[j]);
                i++;
                j++;
            }
            Console.ReadLine();

si qu'elqu'un peut m'aider je le remercie d'avance.

lundi 30 juin 2008 à 16:27:30 | Re : chaine de caractere

Liverion

Essaie avec str1.Contains(str2[i])

~~
Les trois lois de Codes-Sources :
Loi 1) Tu lis et respectes le reglement
Loi 2) Tu penses à valider si une reponse apportée à ton problème t'a aidé
Loi 3) Si tu ne respectes pas les 2 premières ....TU SORS !!

lundi 30 juin 2008 à 16:29:27 | Re : chaine de caractere

krim43

excuse moi mais je suis debutant.

peut tu expliquer plus precisément.


lundi 30 juin 2008 à 16:34:05 | Re : chaine de caractere

Liverion

Tu as une fonction qui existe en C# qui s'applique sur les string (ou les String, a verifier ... ) qui est la fonction Contains qui te renvoie vrai si le caractère en paramètre est contenu dans ta chaîne appelante.
http://msdn.microsoft.com/fr-fr/library/dy85x1sa(VS.80).aspx

~~
Les trois lois de Codes-Sources :
Loi 1) Tu lis et respectes le reglement
Loi 2) Tu penses à valider si une reponse apportée à ton problème t'a aidé
Loi 3) Si tu ne respectes pas les 2 premières ....TU SORS !!

lundi 30 juin 2008 à 16:35:55 | Re : chaine de caractere

krim43

je vai essayé. je te remercie.

je vous dirai si ca fonctionne ou pas.


lundi 30 juin 2008 à 16:44:42 | Re : chaine de caractere

leprov


plus simplement, tu as la méthodes "IndexOfAny" (ou LastIndexOfAny) qui te donne l'indice ou trouver l'ensemble des occurences de ton "str2", et string.Remove, pour retirer X caractères de ta string.
Pour exemple :

string str1 = "totatita";
string str2 = "ta";
string str3

int[] ind = str1.LastIndexOfAny("ta");
foreach(int i in ind)
{
str3 = str1.Remove(i, 2);
}

//ici str3 devrait valoir toti

lundi 30 juin 2008 à 16:47:09 | Re : chaine de caractere

krim43

merci, pour tout votreaide et pour tout le temp que vous m'avez accordé.
je vous tiens au courant de l'evolution des choses.
Et merci encore.

mardi 1 juillet 2008 à 08:49:32 | Re : chaine de caractere

krim43

la solution que m' a donné le prov ne fonctionne pas a moins que se soit moi qui est mal utilisé la fonction, ce qui est surement le cas donc je vous affiche ce que j'ai fait:

private static void strpbrk(string str1,string str2,string str3)
        {
            int[] ind = str1.IndexOfAny(str2);
            foreach (int i in ind)
            {
                str3 = str1.Remove(i, 2);
            }
            Console.ReadLine();
         }

2 erreurs me sont retournés:
- impossible de convertir string en char[]
- la méthode surchargé correspondant le mieux a 'string.IndexOfAny(char[])'possède des arguments non valides.

merci encore.

mardi 1 juillet 2008 à 09:01:01 | Re : chaine de caractere

SharpMao

Membre Club
Réponse acceptée !
Hello,

Perso, je le ferais comme ça :

privatestaticstring strpbrk(string str1, string str2)
{
   string
result = str1;
   foreach (char c in
str2)
   {
      result = result.Replace(c.ToString(),
""
);
   }
   Console
.ReadLine(); 
   return
result;
}


Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)

mardi 1 juillet 2008 à 09:01:55 | Re : chaine de caractere

SharpMao

Membre Club
Petit problème d'espaces, il faut lire

private static string

Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)


1 2

Cette discussion est classé dans : string, console, str1, writeline, str2


Répondre à ce message

Sujets en rapport avec ce message

Pb avec mon programme - help... [ par adrien78 ] Voici les sources de mon programme il bug :// project created on 09/11/2002 at 10:51// By Adrien HADJ SALAH// http://www.informatick.com// Pour me rem programme C# [ par sambb59 ] slt tt le monde, voici mon programme j'ai une erreur est ce ke kelkun pourrai m'aidé à le résoudre svp !!  merci static< Performances / CIL [ par MorpionMx ] Bonjour a tous, J'ai envie de commencer la journée par une question de performance.Soit un programme minimaliste qui crée un entier i et qui l'affiche Lister un tableau ! [ par jimmy69 ] Bonjour a tous ,Inutile de preciser que je debute en c# :-) !Je m'initie au c# depuis quelques heures maintenant et j'ai un p'tit souci au point de vu erreur de strings [ par rhodan51 ] j'ai recopié l'exemple d'un bouquin mais il m'apparait une erreur lors de la compilation :[quote]chaine.cs(7,20): error CS1502: La méthode surchargée Console & Form [ par Onni ] Bonjour à tous. J'explique mon problème. Je débute en C# et j'ai fait un mini jeu de rôle sur une application console. Je souhaiterais intégrer la co Console.WriteLine() et les types int [ par v1 ] Bonjour à tous,Voilà je débute en C# et j'ai fait un petit programme super simple qui demande les caractéristiques d'un PC, mais j'ai un tableau et verification si c'est un repertoire ou pas ! [ par jimmy69 ] Bonjour a tous,J'ai une application console ou je viens coller depuis une application windows un path en faisant un drag and drop !je decompose ma cha déclarer un type word en c# [ par sheebe ] Bonjour, je programme en ce moment en c# une carte à relais permettant d'actionner un gachette de porte pour mon projet de bts  voici mon code:using S Probleme ADO .NET / SQL Server 2005 [ par The Red Man ] Bonjour à tous,J'ai un soucis très bizarre. J'ai un TapbleAdapter qui contient une méthode GetAchat() dont le but est de lister les achats. Cependant,


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,827 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.