Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
9 / 9 / 8
Регистрация: 08.11.2014
Сообщений: 215
Записей в блоге: 1

Правильное преобразование из string в int

17.07.2015, 11:33. Показов 1995. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
С помощью этого цикла, я все элементы массива string конвертирую в int
C#
1
2
for (int i = 0; i < digits.Length; i++)
      d[i] = Convert.ToInt32(digits[i]);
Потом вывожу в консоль - все правильно конвертировалось, но когда передаю значения в оператор выбора..
C#
1
2
3
4
5
6
7
8
9
10
11
12
for (int i = 0; i < d.Length; i++)
 {
      switch (d[i])
       {
          case 113:
                 f += 'а';
                 break;
          case 16:
                 f += 'б';
                 break;
       }
 }
.. то выходит бред
Я ввожу 113, а мне выводит "аб", если ввести любые другие цифры, то все равно будет "аб"
Добавлял еще default в switch. При default выводит "Нет такого символа"
Так вот, если использовать, то мне несколько раз выведет "Нет такого символа" и в конце еще будет "аб"

Почему так получается?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.07.2015, 11:33
Ответы с готовыми решениями:

преобразование string в int
Вот не пойму, как способом можно преобразование string в int... Как вывести int в string разобрался int x = 33; int...

Преобразование String в int[]
Помогите,пожалуйста преобразовать! есть строка key1 = 04589621 её нужно преобразовать в массив &quot;интовский&quot;. что делаю...

Преобразование string[] в int[]
Не могу найти по поиску.. Подскажите как преобразовать массив строк в массив целочисленных значений. string в int Добавлено через...

15
 Аватар для 1337trix
23 / 24 / 11
Регистрация: 04.12.2014
Сообщений: 422
17.07.2015, 11:40
Кавычки должны быть такими "", иначе будет в 16-тиричной системе или 32 и т.д.
Если работаешь с переменной типа int, то кавычки не нужны вообще
C#
1
2
int a = 0;
a += 2;
0
9 / 9 / 8
Регистрация: 08.11.2014
Сообщений: 215
Записей в блоге: 1
17.07.2015, 11:43  [ТС]
Результат тот же
0
 Аватар для 1337trix
23 / 24 / 11
Регистрация: 04.12.2014
Сообщений: 422
17.07.2015, 11:52
Какого типа переменная f?

Добавлено через 5 минут
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
{
string[] digits = { "113", "1", "1", "1", "16" };
int[] d =  { 0 ,0,0,0,0 };
for (int i = 0; i < digits.Length; i++)
d[i] = Convert.ToInt32(digits[i]);
 
            string f = "";
            for (int i = 0; i < d.Length; i++)
            {
                switch (d[i])
                {
                    case 113:
                        f += 'а';
                        break;
                    case 16:
                        f += 'б';
                        break;
                }
            }
MessageBox.Show(f);
}
На WinForms... попробуйте)
0
9 / 9 / 8
Регистрация: 08.11.2014
Сообщений: 215
Записей в блоге: 1
17.07.2015, 11:56  [ТС]
f у меня записана точно так же, как и у вас

Знал бы я WinForms, на нём бы и писал
0
 Аватар для 1337trix
23 / 24 / 11
Регистрация: 04.12.2014
Сообщений: 422
17.07.2015, 12:21
Цитата Сообщение от avraal Посмотреть сообщение
Знал бы я WinForms, на нём бы и писал
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
{
string[] digits = { "113", "1", "1", "1", "16" };
int[] d =  { 0 ,0,0,0,0 };
for (int i = 0; i < digits.Length; i++)
d[i] = Convert.ToInt32(digits[i]);
 
            string f = "";
            for (int i = 0; i < d.Length; i++)
            {
                switch (d[i])
                {
                    case 113:
                        f += 'а';
                        break;
                    case 16:
                        f += 'б';
                        break;
                }
            }
Console.Write(f); // или как точней там пишут.. давно не был в консоли
}
Так в чем проблема? код тот же только MessageBox.Show(f); не выйдет

Добавлено через 19 минут
PS - WinForms - это платформа в VisualStudio (Формы как у винды) думал вы пишите на Console Application..
В общем, это ОДНО И ТО ЖЕ, только нету некоторых элементов(маленькие нюансы)
Скопируйте код и отпишитесь, то ли это, что вы хотели
0
9 / 9 / 8
Регистрация: 08.11.2014
Сообщений: 215
Записей в блоге: 1
17.07.2015, 12:26  [ТС]
Все так же

Меня WPF больше привлекает
0
 Аватар для 1337trix
23 / 24 / 11
Регистрация: 04.12.2014
Сообщений: 422
17.07.2015, 12:38

А как вы хотели?? это зависит от входных данных массива
0
 Аватар для 1337trix
23 / 24 / 11
Регистрация: 04.12.2014
Сообщений: 422
17.07.2015, 12:40
измените вот это
C#
1
string[] digits = { "113", "1", "1", "1", "16" }; // что должно получится A(пусто)(пусто)(пусто)B
так как 113 = А
16 = B
это логично!
вообще, что вы пытаетесь сделать?
0
9 / 9 / 8
Регистрация: 08.11.2014
Сообщений: 215
Записей в блоге: 1
17.07.2015, 12:53  [ТС]
У меня в digits идут "113", "16"..прочие цифры

Да так, велосипеды создаю
0
 Аватар для 1337trix
23 / 24 / 11
Регистрация: 04.12.2014
Сообщений: 422
17.07.2015, 13:08
Ну, так и должно быть))) Смотрите...
Цитата Сообщение от avraal Посмотреть сообщение
У меня в digits идут "113", "16"..прочие цифры
А что это значит? вот ваше условие(примерно так) если 113, то писать А, а если 16, то писать Б
все.... если нету ни 113, ни 16, то ничего не пишут
измените значение и будет вам счастье, например поменяйте местами
0
9 / 9 / 8
Регистрация: 08.11.2014
Сообщений: 215
Записей в блоге: 1
17.07.2015, 13:13  [ТС]
У меня в любом случае начинает выводить "аб"
Даже если я 0 введу
0
 Аватар для 1337trix
23 / 24 / 11
Регистрация: 04.12.2014
Сообщений: 422
17.07.2015, 14:06
Цитата Сообщение от avraal Посмотреть сообщение
У меня в любом случае начинает выводить "аб"
Даже если я 0 введу
как аукнется, так и откликнется(все данные берутся откуда-то, эти вводите вы)
вот вам мой пример Visuas Studio 2013 скачайте, посмотрите, убедитесь
Test1(special for avraal).rar
Название: Image 1.png
Просмотров: 39

Размер: 12.0 Кб
Вот, вполне работает, можете ввести значения в textBox и проверить, не забудьте делиметр ";"
0
484 / 439 / 123
Регистрация: 05.01.2010
Сообщений: 1,848
17.07.2015, 14:06
код полностью в студию
0
146 / 143 / 32
Регистрация: 21.01.2012
Сообщений: 545
17.07.2015, 14:08
avraal, ошибка вне приведенного куска кода
0
 Аватар для 1337trix
23 / 24 / 11
Регистрация: 04.12.2014
Сообщений: 422
17.07.2015, 14:16
Нужно: TextBox1, Button1;
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace Test1 //АХТУНГ Test1 изменить на название проекта (пример WinApp2)
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            string[] digits = textBox1.Text.Split(';');
            int[] d =  new int[digits.Length];
 
            try
            {
                for (int i = 0; i < digits.Length; i++)
                    d[i] = Convert.ToInt32(digits[i]);
 
                string f = "";
                for (int i = 0; i < d.Length; i++)
                {
                    switch (d[i])
                    {
                        case 113:
                            f += 'а';
                            break;
                        case 16:
                            f += 'б';
                            break;
                    }
                }
                MessageBox.Show(f);
            }
            catch
            {
                MessageBox.Show("Значения должны быть разделены знаком ;(точка с запятой), а так же быть типом int");
            }
 
 
        }
    }
}
Вот полностью рабочий код, даже исходник только что выкладывал.....
Что тут трудного?)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.07.2015, 14:16
Помогаю со студенческими работами здесь

Преобразование String в Int
Помогите пожалуйста разобраться. Задача такая: на входе целое 6-значное число, нужно разбить его на две половины по 3 элемента, а эти...

Преобразование типов String в int
Добрый день, перепробовал все способы описанные везде но как введённое через textBox число преобразовать в переменную типа int и/или double...

Преобразование string --> byte[] --> int[]
Играюсь с преобразованиями. Есть код: string str = &quot;It's crypted string from Crypto!&quot;; byte b =...

Неверное преобразование string в int
Доброй ночи программеры))) подскажите пожалуйста почему же вылазит ошибка,и как её исправить. using System; using...

Преобразование int-->byte-->char || string
Немного запутался... Прошу распутать. Есть код, который сохраняет значения Int в файл. 73 83 72 208 184 186


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru