Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 04.06.2013
Сообщений: 23

Ошибка "Входная строка имела неверный формат"

24.05.2015, 15:40. Показов 1450. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Имеется следующий код. При вводе данных 2 2 3 3 выдает ошибку "Входная строка имела неверный формат." Вероятно я что-то напутал с исключениями. Не могли бы ли в помочь разобраться?

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
54
55
56
57
58
59
60
61
62
63
64
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace CHESS
{
    class Program
    {
        static void Main(string[] args)
        {
            bool RESOLVED = false;
            uint a = 0, b = 0, c = 0, d = 0;
            while ((a <= 0 || a > 8) || (b <= 0 || b > 8) || (c <= 0 || c > 8) || (d <= 0 || d > 8))
            {
                Console.WriteLine("Введите a, b, c, d координаты для решения задачи, они должны находится в диапазоне от 1 до 8 иначе необходим повторный ввод!");
                MyFunc.MyFunction.Enter("Введите a: ", out a);
                MyFunc.MyFunction.Enter("Введите b: ", out b);
                MyFunc.MyFunction.Enter("Введите c: ", out c);
                MyFunc.MyFunction.Enter("Введите d: ", out d);
            }
            try
            {
                if (b == 1)
                {
                    Console.WriteLine("Черная пешка не может находиться на первой горизонтали");
                    throw new Exception();
                }
                if ((d == b + 1 || (d == 4 && b == 2)) && a == c)
                {
                    RESOLVED = true;
                    Console.WriteLine("Черная пешка из клетки ({0},{1}) может попасть ходом в клетку ({2),{3})\nЧерная пешка из клетки ({0},{1}) не может попасть атакой в клетку ({2),{3})",a,b,c,d);
                }
                if ((d == b + 1) && (c == a + 1) || (c == a - 1))
                {
                    RESOLVED = true;
                    Console.WriteLine("Черная пешка из клетки ({0},{1}) не может попасть ходом в клетку ({2),{3})\nЧерная пешка из клетки ({0},{1}) может попасть атакой в клетку ({2),{3})",a,b,c,d);
                }
                if (!RESOLVED)
                    throw new Exception();
            }
            catch
            {
                Console.WriteLine("• Черная пешка из клетки ({0},{1}) не может попасть ходом в клетку ({2),{3})\n• Черная пешка из клетки ({0},{1}) не может попасть атакой в клетку ({2),{3})/n", a, b, c, d);
            }
           
            Console.ReadKey(true);
        }
    }
}
 
namespace MyFunc
{
    public class MyFunction
    {
 
        public static void Enter(string str, out uint Number)
        {
            Console.Write(str);
            if (!uint.TryParse(Console.ReadLine(), out Number))
                Enter(str, out Number);
        }
    }
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.05.2015, 15:40
Ответы с готовыми решениями:

Ошибка: Входная строка имела неверный формат
Всем доброго времени суток. У меня 2:04 часа ночи сижу уже залипаю. Не могу понять из за чего ошибка? case 'G': ...

Ошибка - Входная строка имела неверный формат
static double f(double x) { double y; if (x &gt;= 0.9) y = 1 / Math.Pow(.1 + x, 2); ...

Входная строка имела неверный формат
Помогите пожалуйста, уже 4 час бьюсь с проблемой &quot;Входная строка имела не верный формат&quot;. Программа берёт число из INPUT.txt и...

2
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
24.05.2015, 15:59
Цитата Сообщение от Erfar Посмотреть сообщение
При вводе данных 2 2 3 3
Данные же вводятся не в одну строку, разделенные пробелом?

Цитата Сообщение от Erfar Посмотреть сообщение
C#
1
while ((a <= 0 || a > 8) || (b <= 0 || b > 8) || (c <= 0 || c > 8) || (d <= 0 || d > 8))
Избавьтесь от этого безобразия: у вас уже есть рекурсивный цикл в методе Enter, просто добавьте туда дополнительное условие.
0
0 / 0 / 0
Регистрация: 04.06.2013
Сообщений: 23
24.05.2015, 16:21  [ТС]
Цитата Сообщение от kolorotur Посмотреть сообщение
Данные же вводятся не в одну строку, разделенные пробелом?
да, они вводятся последовательно через ввод
Избавьтесь от этого безобразия: у вас уже есть рекурсивный цикл в методе Enter, просто добавьте туда дополнительное условие.
Поправлю, но это явно не причина ошибки

Добавлено через 10 минут
Проблема обнаружена и решена. Была в том что вместо } в коде бsло )
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.05.2015, 16:21
Помогаю со студенческими работами здесь

Входная строка имела неверный формат
Здравствуйте. Помогите пожалуйста разобраться с ошибкой using NUnit.Framework; using System; using System.Collections.Generic; ...

Входная строка имела неверный формат
string massiv1; string c; double result; massiv1 = new string; c = new string; c = massiv1;

Входная строка имела неверный формат
Функция читает файл в котором есть одна строка со значением 0.01 string sversion = File.ReadAllText(fileVersionName); ...

Входная строка имела неверный формат.
Ребят,выручайте,у меня уже глаз намылился. При вызове метода UnEncryption в строке 77 выходит ошибка &quot;Входная строка имела неверный...

Входная строка имела неверный формат
Как это исправить,подскажите,пожалуйста. money=money+dop; metka: if(price&gt;money) { ...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
BOINC: 22 года — и всё ещё работает
Programma_Boinc 12.03.2026
BOINC: 22 года — и всё ещё работает Дэвид Андерсон написал ретроспективу. Кратко: в 2001 году он ушёл из United Devices, где был CTO, и за несколько месяцев написал ядро BOINC — клиент, сервер,. . .
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-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru