Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
13 / 11 / 2
Регистрация: 07.05.2015
Сообщений: 418

Неожиданный результат программы

18.10.2021, 14:43. Показов 1675. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Я написал программу, которая ищет разницу между двумя наборами файлов попарно. Не важно, что конкретно она делает, чтобы не уходить от темы.
Дело в том, что результат разный для одной и той же программы и одного и того же набора данных на разных компьютерах.
Я не использую рандом, параллелизацию, сторонние библиотеки и прочее.
Пожалуйста, подскажите в чём ещё может быть разница?

В сущности, происходит следующее: моя программа ищет и читает файлы определённого формата из папки A и её подпапок. Потом, она ищет существующие копии этих файлов в папке B и её подпапках по тому же относительному пути. Для каждой пары файлов (один файл из А\\.., другой из B\\...) находится расстояние между геометрическими фигурами (описаны координатами точек в формате double) и записыает результаты в файл отчёта.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.10.2021, 14:43
Ответы с готовыми решениями:

Событие. Неожиданный результат
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using...

Неожиданный результат при выводе в консоль случайно сгенерированного массива символов
Друзья, помоги найти ошибку новичку. При пошаговой трассировке получаю ожидаемый результат. Пример: аба ааб баб ваб ваб вба ааб...

Неожиданный результат программы
Проблема в том что после первой итерации в цикле (которая проходит верно) программа начинает отнимать по одному. Программа должна спросить...

10
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
18.10.2021, 14:47
Цитата Сообщение от Aycon Посмотреть сообщение
чём ещё может быть разница?
Очевидно, что в кривой реализации этого:
Цитата Сообщение от Aycon Посмотреть сообщение
моя программа ищет и читает файлы определённого формата из папки A и её подпапок.
Или этого:
Цитата Сообщение от Aycon Посмотреть сообщение
она ищет существующие копии этих файлов в папке B и её подпапках по тому же относительному пути
Или вот этого:
Цитата Сообщение от Aycon Посмотреть сообщение
Для каждой пары файлов (один файл из А\\.., другой из B\\...) находится расстояние между геометрическими фигурами (описаны координатами точек в формате double) и записыает результаты в файл отчёта
1
13 / 11 / 2
Регистрация: 07.05.2015
Сообщений: 418
18.10.2021, 15:00  [ТС]
kolorotur, Код поиска файлов в подпапках я взял с сайта майкрософт. Для 2 и 3 я ищу просто файлы, которые имеют расширение .txt и проверяет что у них одинаковый путь после A или B.
Что я мог напортачить, чтобы получить иной результат? Пары файлов одинаковые на обоих компьютерах, пропускаются через одну и ту же функцию. Я проверил контрольную сумму между exeшниками - это одна программа. Я её только что написал и скопировал

Добавлено через 3 минуты
kolorotur, не знаю, что вам очевидно, мне вот нихрена не очевидно
0
sleep
 Аватар для I can
4934 / 4607 / 841
Регистрация: 13.04.2015
Сообщений: 9,774
18.10.2021, 15:13
Цитата Сообщение от Aycon Посмотреть сообщение
описаны координатами точек в формате double
Цитата Сообщение от Aycon Посмотреть сообщение
результат разный для одной и той же программы и одного и того же набора данных на разных компьютерах.
Вот, разделители возможно разные?

Добавлено через 8 минут
Узнать разделитель
C#
1
   MessageBox.Show(System.Globalization.CultureInfo.CurrentCulture.NumberFormat.CurrencyDecimalSeparator[0].ToString());
0
13 / 11 / 2
Регистрация: 07.05.2015
Сообщений: 418
18.10.2021, 15:27  [ТС]
I can, спасибо, хорошая подсказка, но это первое о чём я подумал) разделитель всегда одна и та же строка с точкой. В файле тоже всегда точка, сравнение строк как текста от глобализации не зависит

*с текстом и с точками
0
sleep
 Аватар для I can
4934 / 4607 / 841
Регистрация: 13.04.2015
Сообщений: 9,774
18.10.2021, 15:32
Цитата Сообщение от Aycon Посмотреть сообщение
сравнение строк как текста от глобализации не зависит
А как же ?
Цитата Сообщение от Aycon Посмотреть сообщение
находится расстояние между геометрическими фигурами
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
18.10.2021, 15:38
Цитата Сообщение от Aycon Посмотреть сообщение
не знаю, что вам очевидно
Ну как минимум то, что гремлины здесь не замешаны.

Цитата Сообщение от Aycon Посмотреть сообщение
мне вот нихрена не очевидно
Так покажите код — иначе ведь остается только гадать.
0
13 / 11 / 2
Регистрация: 07.05.2015
Сообщений: 418
18.10.2021, 15:44  [ТС]
I can, double.TryParse, double.Parse. он вроде оба разделителя корректно считает... Надо проверить)

Добавлено через 2 минуты
kolorotur, не могу, на работе код. Вопрос строго говоря не про ошибку. Мне интересно что вообще в принципе может отличаться в компьютерах кроме разрядности и региональных параметров. Я даже не знаю как отлаживать этот код, компьютер второй занят, остаётся только гадать
0
sleep
 Аватар для I can
4934 / 4607 / 841
Регистрация: 13.04.2015
Сообщений: 9,774
18.10.2021, 15:51
Лучший ответ Сообщение было отмечено Aycon как решение

Решение

Цитата Сообщение от Aycon Посмотреть сообщение
double.TryParse, double.Parse. он вроде оба разделителя корректно считает
Я бы не сказал. Впрочем, не стоит сильно заморачиваться, это только одна из версий.
Миниатюры
Неожиданный результат программы  
2
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
18.10.2021, 15:51
Цитата Сообщение от Aycon Посмотреть сообщение
не могу, на работе код.
Тогда помочь можно мало чем — зачастую проблема бывает в глупой опечатке, из-за которой программа делает не совсем то, что хотел автор.

Цитата Сообщение от Aycon Посмотреть сообщение
Мне интересно что вообще в принципе может отличаться в компьютерах кроме разрядности и региональных параметров
Да масса всякого: от прав доступа к директориям до версий фреймворка и результатов проверки/вычисления double.
0
13 / 11 / 2
Регистрация: 07.05.2015
Сообщений: 418
19.10.2021, 07:41  [ТС]
I can, да проблема решилась. Были разные разделители, спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.10.2021, 07:41
Помогаю со студенческими работами здесь

неожиданный результат
не могу понять в чем проблема приложение рассчитывает по первым 2 условиям верно а по второму какую то хрень //программа по расчету...

Неожиданный результат
Всем привет! Написал небольшую программу: #include <iostream> using namespace std; int main() { int x, a, b; x = a + b; ...

Неожиданный результат с Core i7
может кто помнит, я создавал тему - что если для sli на gtx 660 вместо core i5 650 поставить core i7 причем в теме было мнение мол,...

Выводиться неожиданный результат
Добрый вечер! Не могли бы Вы пожалуйста пояснить. В процессе прохождения теста наткнулась на програмку public class Main { ...

Неожиданный результат toString
Проблема, с которой я столкнулся: long timestamp = System.currentTimeMillis()/1000; String query = "UPDATE `table` SET 'time' =...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru