Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.10.2013, 17:36   #1
Наталья Баева
Форумчанин
 
Регистрация: 25.04.2012
Сообщений: 128
По умолчанию Написание слов

Помогите пожалуйста исправить ошибку в программе
Код:
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication2
{
    class Program
    {
        static ArrayList listOfLetters;

        static void DrawLetter(byte[,] L, int x, int y)
        {
            for (int i = 0; i < 8; i++)
                for (int j = 0; j < 8; j++)
                {
                    if (L[i, j] == 1)
                    {
                        Console.SetCursorPosition(x + j, y + i);
                        Console.Write("*");
                    }
                }
            {

            }
        }

        static void DrawText(string txt, int x, int y)
        {
            //txt="abba"
            byte b = (byte)'a';

            for (int i = 0; i < txt.Length; i++)
            {
                char ch = txt[i];
                byte nomer = (byte)((byte)ch - b);
                byte[,] Letter = (byte[,])listOfLetters[nomer];
                DrawLetter(Letter, x + 9 * i, y);
            }

        }

        static void Main(string[] args)
        {
            byte[,] LetterA =
            { 
                {0,0,0,1,1,1,0,0},
                {0,0,1,0,0,0,1,0},
                {0,1,0,0,0,0,0,1},
                {0,1,0,0,0,0,0,1},
                {0,1,1,1,1,1,1,1},
                {0,1,0,0,0,0,0,1},
                {0,1,0,0,0,0,0,1},
                {0,1,0,0,0,0,0,1}
               
            };

            byte[,] LetterB =
            {
                {0,1,1,1,0,0,0,0},
                {0,1,0,0,1,0,0,0},
                {0,1,0,1,0,0,0,0},
                {0,1,1,0,0,0,0,0},
                {0,1,0,1,1,0,0,0},
                {0,1,0,0,0,1,0,0},
                {0,1,0,0,0,1,0,0},
                {0,1,1,1,1,0,0,0}
               
            };

            byte[,] LetterC =
            {
                {0,0,0,1,1,1,0,0},
                {0,0,1,0,0,0,0,0},
                {0,1,0,0,0,0,0,0},
                {0,1,0,0,0,0,0,0},
                {0,1,0,0,0,0,0,0},
                {0,1,0,0,0,0,0,0},
                {0,0,1,0,0,0,0,0},
                {0,0,0,1,1,1,0,0}
            };

            byte[,] LetterD =
            {
                {0,1,1,1,0,0,0,0},
                {0,1,0,0,1,0,0,0},
                {0,1,0,0,0,1,0,0},
                {0,1,0,0,0,1,0,0},
                {0,1,0,0,0,1,0,0},
                {0,1,0,0,0,1,0,0},
                {0,1,0,0,1,0,0,0},
                {0,1,1,1,0,0,0,0}
               
            };

            byte[,] LetterE =
            {
                {0,1,1,1,1,0,0,0},
                {0,1,0,0,0,0,0,0},
                {0,1,0,0,0,0,0,0},
                {0,1,1,1,1,0,0,0},
                {0,1,0,0,0,0,0,0},
                {0,1,0,0,0,0,0,0},
                {0,1,0,0,0,0,0,0},
                {0,1,1,1,1,0,0,0}
               
            };

            byte[,] LetterF =
            {
                {0,1,1,1,1,0,0,0},
                {0,1,0,0,0,0,0,0},
                {0,1,0,0,0,0,0,0},
                {0,1,1,1,1,0,0,0},
                {0,1,0,0,0,0,0,0},
                {0,1,0,0,0,0,0,0},
                {0,1,0,0,0,0,0,0},
                {0,1,0,0,0,0,0,0}
               
            };




            byte[,] LetterR =
            {
                {0,1,1,0,0,0,0,0},
                {0,1,0,1,0,0,0,0},
                {0,1,0,0,1,0,0,0},
                {0,1,0,1,0,0,0,0},
                {0,1,1,0,0,0,0,0},
                {0,1,0,1,0,0,0,0},
                {0,1,0,0,1,0,0,0},
                {0,1,0,0,0,1,0,0}
               
            };

            byte[,] LetterI =
            {
                {0,1,1,1,1,1,0,0},
                {0,0,0,1,0,0,0,0},
                {0,0,0,1,0,0,0,0},
                {0,0,0,1,0,0,0,0},
                {0,0,0,1,0,0,0,0},
                {0,0,0,1,0,0,0,0},
                {0,0,0,1,0,0,0,0},
                {0,1,1,1,1,1,0,0}
               
            };

            listOfLetters = new ArrayList();
            listOfLetters.Add(LetterA);
            listOfLetters.Add(LetterB);
            listOfLetters.Add(LetterC);
            listOfLetters.Add(LetterD);
            listOfLetters.Add(LetterE);
            listOfLetters.Add(LetterF);
       

            DrawText("ABC", 5, 2);
            /*DrawLetter(LetterA,20,2);
            DrawLetter(LetterB, 10, 5);*/
            Console.ReadLine();
        }

    }
}
В итоге я хотела написать слово friends но ничего не выходит.
Наталья Баева вне форума Ответить с цитированием
Старый 05.10.2013, 22:09   #2
simples
Форумчанин
 
Регистрация: 03.10.2013
Сообщений: 142
По умолчанию

Цитата:
Сообщение от Наталья Баева Посмотреть сообщение
Код:
            byte b = (byte)'a';
Копипаст + замена на
Код:
            byte b = (byte)'A';
результат - "ABC" в консоли.

По поводу FRIENDS - букв RINS нет в списке listOfLetters.
Ну алгоритм получения растра буквы по индексу из кода буквы... несколько неудобный и требует наличия ВСЕХ букв включая ненужные Вам прямо сейчас. Я бы написал простенькую структуру с буквой и растром, положил все гужные мне буквы в список, и из списка ПО БУКВЕ получал нужный мне растр. Без шаманства с кодами и т.д.

Последний раз редактировалось simples; 05.10.2013 в 22:17.
simples вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
посчитать количество всех слов,слов-маркеров и процент слов-маркеров ksenya91 Помощь студентам 9 09.01.2013 07:00
Ввести с клавиатуры строку. Посчитать количество слов в строке. Определить, что является разделителем слов. Вывести рез-ть на экра Газимов Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 02.03.2012 15:58
Дана последовательность слов разделенных пробелами, удалить из нее повторные вхождения слов.С++ Bullrock Помощь студентам 4 01.03.2012 13:16
по вводу слов в массив и подсчёт введённых слов -ushёl- Общие вопросы C/C++ 4 16.11.2009 00:45
Составить в алфавитном порядке список всех слов, встречающихся в тексте, и количество этих слов. KAPAHDAW Паскаль, Turbo Pascal, PascalABC.NET 2 17.02.2009 01:19