Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

помогите отладить коропуленькую программку в Qbasice

AlexChem Профи (791), закрыт 12 лет назад
Люди, я щаз отупею... спасайте!
(преамбула: еще в школе овладел бейсиком, теперь иногда балусь программированием на этом чудном языке. мне хватает.. ;))
программа:

FOR i = 1 TO 10 ' начинаем цикл
n1$ = STR$(i) ' переводим число в строковую переменную
n2$ = ".txt" ' задаем тип расширения будущего файла
'INPUT "Введите имя файла: "; n1$ ' альтернативная строка генерации имени вручную
nn$ = n1$ + n2$ ' склека полного имени файла из имени и расширения с точкой
PRINT "создается файл:"; nn$ ' проверка правильности имени файла
OPEN nn$ FOR APPEND AS #i ' открытие (создание) файла
PRINT "done" ' проверка того, что открытие удалось
NEXT i ' без коммента
CLOSE ' закрыть все.

в этом виде должна создать десять файлов с именами от 1.txt до 10.txt и все потом разом закрыть.
не работает!!!!спотыкается на строке открытия файла в первом же цикле, сообщает, мол "файл не найден". безобразие повторяется, даже если в рабочей папке эти фалы реально уже есть!! (созданные по продцедуре, описанной ниже)

ЕСЛИ мы отключаем строку с генерацией имени файла из числа и вместо нее включаем строку с вводом имени переменной с клавы, все прекрасно работает: фалы шикарно СОЗДАЮТСЯ!

там в цикле есть проверочная строка с именем файла - при автоматической генерации и ручной - имена совпадают. но автоматом - не хочет, а ручками идет....
помогите, что с ней НЕ ТАК?
надо, чтобы работало автоматом...
помогите, плиз..
Лучший ответ
~~ Просветленный (31834) 12 лет назад
Забудьте про эту древность!
Если знаете бейсик, то используйте PureBasic.
У него прекрасный отладчик, есть много инструментов отладчик, таких как пошаговое выполнение программы, просмотр содержимого переменных, массивов, связанных списков, структур, памяти и т. д. Есть профилер, purifier и многое другое, см. скриншот.



Здесь можно прочитать про работу с отладчиком [ссылка заблокирована по решению администрации проекта]

PS.
На PureBasic код будет таким:

OpenConsole() ; Отрыли консоль.
For i = 1 To 10 ; начинаем цикл.
n1$ = Str(i) ; переводим число в строковую переменную.
n2$ = ".txt" ; задаем тип расширения будущего файла.
nn$ = n1$ + n2$ ; склека полного имени файла из имени и расширения с точкой.
PrintN("CreateFile: "+nn$); ; проверка правильности имени файла.
If CreateFile(0, nn$) ; открытие (создание) файла.
CloseFile(0) ; закрыть файл.
EndIf
Print("done") ; проверка того, что открытие удалось.
Next i ; без коммента.
Input() ; Чтобы консоль не закрылась.
AlexChemПрофи (791) 12 лет назад
намек понял...
присмотрюсь...
спасибо
Остальные ответы
Президент интернета Оракул (54575) 12 лет назад
Попробуй вместо append поставить output
OPEN nn$ FOR OUTPUT AS #i
AlexChemПрофи (791) 12 лет назад
теже , тока в профиль....:(
Похожие вопросы