Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Psilon
Master of Orion
Эксперт .NET
5935 / 4834 / 636
Регистрация: 10.07.2011
Сообщений: 14,439
Записей в блоге: 5
Завершенные тесты: 4
#1

Общие вопросы по использованию C# - C#

22.03.2012, 21:17. Просмотров 1061. Ответов 17
Метки нет (Все метки)

Не знаю, почему нету тут такой темы с пометкой "важно", часто бывают вопросы, не требующие отдельной темы. Ну да ладно, собственно вопрос, почему когда я пишу
C#
1
2
A[i,j]=0;
Console.Write(A[i, j]);
Он пишет 32? То есть если сделать
C#
1
2
A[i,j]=0;
Console.Write(A[i, j]-32);
выводит правильно, но вопрос нельзя ли убрать этот гемор?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.03.2012, 21:17
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Общие вопросы по использованию C# (C#):

.NET 3.x как реализовать базу данных и зашитить от копирования. Общие вопросы по дедко-проге - C#
Всем привет. Начну с истории. Меня попросил отец сделать программку для книжного магазинчика, в ней должна быть некая книжная база(что есть...

Подскажите по использованию потоков - C#
В ходе изучения возникло несколько вопросов. Пожалуйста, подскажите или поправьте если я не прав. 1) Нужно ли уничтожать объект после его...

Общий вопрос по практическому использованию C# - C#
Несколько глупые вопросы, но всё же хотелось прояснить: - C# можно использовать только для разработки программ под Windows или для других...

.NET 3.x Сбор статистик по использованию программы - C#
Доброго всем времени суток! Имеется некое ПО которое представляет из себя несложную систему диагностики. Пользователю задаются вопросы...

.NET 4.x Вопрос по использованию регулярных выражений - C#
Использую Regex следующим образом: Regex RE = new Regex(matchPattern, RegexOptions.IgnoreCase | RegexOptions.Singleline); ...

Покажите примеры по использованию NAudio.dll - C#
Покажите пожалуйста примеры по использованию и проигрывания песен с использованием такой мощной библиотеки как NAudio.dll - я ни как не...

17
Alex_Sabaka
627 / 488 / 10
Регистрация: 28.07.2010
Сообщений: 895
Завершенные тесты: 3
22.03.2012, 21:31 #2
Потому, что на экран выводиться ASCII-код символа '0' (хз почему, по Вашему коду это не скажешь). А так как ASCII-код символа '0' равняется 32, то следственно вычитанием из символа '0' число 32 мы получим число 0.
1
Psilon
Master of Orion
Эксперт .NET
5935 / 4834 / 636
Регистрация: 10.07.2011
Сообщений: 14,439
Записей в блоге: 5
Завершенные тесты: 4
22.03.2012, 21:40  [ТС] #3
Хорошо, тогда вопрос №2. Как нормально создать случайную последовательность. Единственное до чего дотумкал:
C#
1
2
3
Random r = new Random();
Thread.Sleep(20);
A[i, j] = r.Next(10);
Но слишком долго получается. Только-только начал изучать язык, так что не знаю, как реализовать random.
0
MansMI
1375 / 1154 / 340
Регистрация: 08.01.2012
Сообщений: 4,509
22.03.2012, 21:44 #4
TopicStarter гонит, мы не знаем как заявлен А
0
Lovrentiy
161 / 161 / 8
Регистрация: 07.09.2011
Сообщений: 995
22.03.2012, 21:45 #5
А зачем
C#
1
Thread.Sleep(20);
?
0
Psilon
Master of Orion
Эксперт .NET
5935 / 4834 / 636
Регистрация: 10.07.2011
Сообщений: 14,439
Записей в блоге: 5
Завершенные тесты: 4
22.03.2012, 21:54  [ТС] #6
Lovrentiy,
Иначе в массиве только одинаковые элементы:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
using System;
using System.Threading;
 
 
namespace ABCMatrix
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Введите длину массивов");
            int n = Convert.ToInt32(Console.ReadLine());
            int[,] A;
            A = new int[n,n];
            for (int i = 0; i < n; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    Random r = new Random();
                    //Thread.Sleep(20);
                    A[i, j] = r.Next(10);
                }
            }
            for (int i = 0; i < n; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    Console.Write(A[i, j] + " ");
                }
                Console.WriteLine();
            }
 
            Console.ReadKey(true);
        }
    }
}
Первый вариант - с добавлением sleep, второй - без.
0
Миниатюры
Общие вопросы по использованию C#   Общие вопросы по использованию C#  
TARAS87
36 / 35 / 2
Регистрация: 03.06.2010
Сообщений: 170
22.03.2012, 21:56 #7
Цитата Сообщение от Psilon Посмотреть сообщение
Хорошо, тогда вопрос №2. Как нормально создать случайную последовательность.
Random.NextBytes
0
-SeRg-
25 / 25 / 2
Регистрация: 03.06.2010
Сообщений: 76
22.03.2012, 22:04 #8
вынеси создание объекта Random из тела цикла...
1
Psilon
Master of Orion
Эксперт .NET
5935 / 4834 / 636
Регистрация: 10.07.2011
Сообщений: 14,439
Записей в блоге: 5
Завершенные тесты: 4
22.03.2012, 22:10  [ТС] #9
-SeRg-, спасибо ,работает, вопрос: с чем связано? Просто после дельфи ( за исключением I\O операций) не очень понятно что к чему. В данном случае это эквивалентно функции randomize из дельфи, которая каждый раз задавала одно и то же стартовое значение => каждый раз и получала постоянно одно и то же число, или я не прав?
0
TARAS87
36 / 35 / 2
Регистрация: 03.06.2010
Сообщений: 170
22.03.2012, 22:14 #10
Цитата Сообщение от Psilon Посмотреть сообщение
-SeRg-, спасибо ,работает, вопрос: с чем связано? Просто после дельфи ( за исключением I\O операций) не очень понятно что к чему. В данном случае это эквивалентно функции randomize из дельфи, которая каждый раз задавала одно и то же стартовое значение => каждый раз и получала постоянно одно и то же число, или я не прав?
Как раз таки randomize и делается для того чтобы каждый раз разное значение было.
0
Psilon
Master of Orion
Эксперт .NET
5935 / 4834 / 636
Регистрация: 10.07.2011
Сообщений: 14,439
Записей в блоге: 5
Завершенные тесты: 4
22.03.2012, 22:18  [ТС] #11
TARAS87, Если сделать в дельфи randomize(1); к примеру, будет выводиться одна и та же псевдослучайная последовательность.

Вопрос №3:
Есть такой кусок кода
C#
1
2
3
4
int[,] A,B,C;
A = new int[n,n];
            B = new int[n,n];
            C = new int[n,n];
Можно ли его оптимизировать как-то?
Если записать
C#
1
2
int[,] A,B,C;
A=B=C=new int[n,n];
То они начинают указывать на один и тот же объект, что не есть гуд.
0
-SeRg-
25 / 25 / 2
Регистрация: 03.06.2010
Сообщений: 76
22.03.2012, 22:37 #12
просто Random постоянно пересоздавался и ему передавалось одно и тоже значение, которое менялось с определённым интервалом (если задать массив побольше, видно что там пару повторяющихся значений), пауза потока позволяла "затормозить" цикл и создать новое значение. правильнее объявить один объект для всего цикла.
1
Alex_Sabaka
627 / 488 / 10
Регистрация: 28.07.2010
Сообщений: 895
Завершенные тесты: 3
22.03.2012, 22:44 #13
Цитата Сообщение от Psilon Посмотреть сообщение
Можно ли его оптимизировать как-то?
Так делать можно только со структорами(т.е. не ссылочными типами данных), т.к.
Цитата Сообщение от Psilon Посмотреть сообщение
они начинают указывать на один и тот же объект, что не есть гуд.
1
Psilon
Master of Orion
Эксперт .NET
5935 / 4834 / 636
Регистрация: 10.07.2011
Сообщений: 14,439
Записей в блоге: 5
Завершенные тесты: 4
22.03.2012, 23:48  [ТС] #14
Вопрос №4: есть ли способ использовать foreach для вывода на экран массива NxN или только с помощью двух for i и for j?
0
-SeRg-
25 / 25 / 2
Регистрация: 03.06.2010
Сообщений: 76
23.03.2012, 00:00 #15
синтаксис foreach для вывода такой же, как и для одномерного
0
23.03.2012, 00:00
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.03.2012, 00:00
Привет! Вот еще темы с ответами:

Использование DirectX3D: нужга информация по использованию - C#
и так проблема моя в том что я не могу найти ни какой путной информации по поводу программирование 3D графики с использованием...

Нужна консультация по использованию компонента PDF Expert - C#
Всем - привет! Если не в той теме пишу - поправьте. Есть саит, сделанный на FLEX, есть PDF Expert - dll, купленная для работы с саитом,...

Нужна информация по использованию IoC Castle Windsor - C#
Хотел устроиться на работу (работодатель принимает без опыта). Отправил мне задание перед собеседованием. Так он уперся чтобы я сделал...

Теоретические вопросы по правильному использованию автоматической компоновки - C# WPF
Допустим, что на форме есть некое текстовое поле, содержимое которого периодически меняется. Может быть одна строка, может быть две. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Закрытая тема Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru