C # - Nombre de cordes Mapping - Logic dur

voix
0

Mon TL m'a demandé de mettre en œuvre ceci:

Si nous avons les alphabets en anglais numérotés comme

a   1
b   2
c   3
d   4
e   5
f   6
g   7
h   8
i   9
j   1
k   2
l   3
m   4
n   5
o   6
p   7
q   8
r   9
s   1
t   2
u   3
v   4
w   5
x   6
y   7
z   8

les voyelles seraient

a   1
e   5
i   9
o   6
u   3

L'Utilisateur entrerait:

  1. Nombre de Voyelles
  2. Somme
  3. Nombre de caractères

Maintenant , je dois montrer une chaîne de longueur: nombre de caractères saisis par l' utilisateur.
La chaîne aurait deux parties:
la première partie aurait Voyelles avec la somme saisie par l'utilisateur.
La deuxième partie serait de longueur [nombre de caractères entrés par l' utilisateur - voyelles selon la première moitié de chaîne ci - dessus] et la somme serait la même entrée par l' utilisateur.

Quelqu'un peut-il écrire corps du code C # pour cela. J'ai essayé vraiment dur mais ne pouvait pas comprendre.

Toute aide serait grandement appréciée.

Voici mon code à ce jour:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace VowelsAndConsonants
{
    class Program
    {
        static void Main(string[] args)
        {
            //Gather Info from the User
            Console.WriteLine(Please Enter Number of Vowels);
            string numVowels = Console.ReadLine();
            Console.WriteLine(Please Enter the Total);
            string total = Console.ReadLine();
            Console.WriteLine(Please Enter the Number of Chars);
            string numChars = Console.ReadLine();
            //Convert the Strings entered by User to int
            int inNumVowels = Convert.ToInt16(numVowels);
            int intTotal = Convert.ToInt16(total);
            int intNumChars = Convert.ToInt16(numChars);
            //Populate the Array with all the alphanets
            string[,] arr = new string[,] { { a, 1 }, { b, 2 }, { c, 3 }, { d, 4 }, { e, 5 }, { f, 6 }, { g, 7 }, { h, 8 }, { i, 9 }, { j, 1 }, { k, 2 }, { l, 3 }, { m, 4 }, { n, 5 }, { o, 6 }, { p, 7 }, { q, 8 }, { r, 9 }, { s, 1 }, { t, 2 }, { u, 3 }, { v, 4 }, { w, 5 }, { x, 6 }, { y, 7 }, { z, 8 } };
            string[] resArr= new string[20];// = null;
            for (int i = 0; i < intNumChars; i++)
            {
                //The logic you guys would suggest goes here
                resArr[0]=arr[,];
                //Display the string
                Console.WriteLine();
            }
        }
    }
}
Créé 27/08/2009 à 05:36
source utilisateur
Dans d'autres langues...                            


2 réponses

voix
6

La partie difficile est pas en train d' écrire le code. La partie difficile est de déterminer ce que l' algorithme est qui résout ce problème. Une fois que vous avez l'algorithme solide, transformant en code sera simple.

Quelles sont vos réflexions sur l'algorithme? Commencez par quelques exemples artificiels. Par exemple, supposons que vous êtes donné 1/9/2. Une solution à cette question est IR. Comment voulez-vous, comme un être humain, arriver à cette solution? Pouvez-vous décrire une méthode par laquelle vous, un être humain, peut toujours trouver la réponse?

Créé 27/08/2009 à 07:03
source utilisateur

voix
0

Je pense que vous êtes sur la mauvaise voie avec l'utilisation de mod.

Il me semble que ce soit une variation à un problème « d'algorithme glouton », normaly associée à l'élaboration de changement efficace avec des pièces dans des questions de devoirs, mais je pense que cela semble être une variante de celui-ci.

Wikipédia a une page sur elle , et je suis sûr algorithme glouton googler vous aider.

Créé 27/08/2009 à 06:24
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more