Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > MidletPascal > Основной форум

Основной форум Сюда все проблемы связанные с программированием.

Ответ
 
Опции темы
Старый 20.11.2007, 20:33   #1
@lexxx
AnyKey`щик
 
Регистрация: 18.11.2007
Сообщений: 19
Написано 0 полезных сообщений
(для 0 пользователей)
не могу понять в чем прикол

Написал MIDlet, на всех эмуляторах запускается. На телефоне - фиг. На Сименсе выдает какую-то фигню, а на Nokia вообще недопустимое приложение
program rulon;
var dsID,hsID,d1sID,stringID: integer;
i, n: integer;
hi,di,d,d1,l,h,r,d1i:real;
cmdNext,cmdQuit: command;
begin
    ShowForm;
    dsID:=FormAddTextField('Введите диаметр рулона в мм', '', 4, TF_NUMERIC);
    hsID:=FormAddTextField('Введите толщину материала в мкм', '', 4, TF_NUMERIC);
    d1sID:=FormAddTextField('Введите диаметр держателя в мм', '', 10, TF_NUMERIC);
    cmdNext := CreateCommand('Считать', CM_OK, 1); 
    AddCommand(cmdNext);
    repeat until GetClickedCommand = cmdNext;
    ShowCanvas;
    di:=StringToInteger(FormGetText(dsID));
    d:=di/1000;
    hi:=StringToInteger(FormGetText(hsID));
    h:=hi/1000000;
    d1i:=StringToInteger(FormGetText(d1sID));
    d1:=d1i/1000;
    n:=trunc((d-d1)/(2*h));
    l:=0;
    r:=d1+h;
    for i:=1 to n do
    begin
        l:=l+3.14*r;
        r:=r+h;
    end;
    l:=l*100;
    l:=trunc(l);
    l:=l/100;
    DrawText('Длина: '+l,0,0);
    repaint;
    cmdQuit := CreateCommand('Выход', CM_EXIT, 1);
    AddCommand(cmdQuit); 
    repeat until GetClickedCommand = cmdQuit;
end.
(Offline)
 
Ответить с цитированием
Старый 20.11.2007, 21:02   #2
zheland
Разработчик
 
Регистрация: 18.10.2007
Сообщений: 349
Написано 64 полезных сообщений
(для 95 пользователей)
Плохо Re: не могу понять в чем прикол

А ты на Samsung или на SonyEricsson пробовал?
Ну а к делу :
я с MIDlet'ом не расбираюсь.
пересмотри код может где-то что-то перепутал.
(Offline)
 
Ответить с цитированием
Старый 20.11.2007, 21:04   #3
zheland
Разработчик
 
Регистрация: 18.10.2007
Сообщений: 349
Написано 64 полезных сообщений
(для 95 пользователей)
Re: не могу понять в чем прикол

Смотрю,напоминает Pascal!!!
(Offline)
 
Ответить с цитированием
Старый 20.11.2007, 21:15   #4
@lexxx
AnyKey`щик
 
Регистрация: 18.11.2007
Сообщений: 19
Написано 0 полезных сообщений
(для 0 пользователей)
Re: не могу понять в чем прикол

Это и есть Паскаль. Ты название форума видел?
(Offline)
 
Ответить с цитированием
Старый 20.11.2007, 21:26   #5
Alex_90
Знающий
 
Регистрация: 05.02.2007
Сообщений: 201
Написано одно полезное сообщение
(для 2 участников)
Re: не могу понять в чем прикол

var dsID,hsID,d1sID,stringID: integer;
i, n: integer;
hi,di,d,d1,l,h,r,d1i:real;
cmdNext,cmdQuit: command;
А не много ли ты переменныых объявил?
Может памяти не хватает?
(Offline)
 
Ответить с цитированием
Старый 20.11.2007, 21:34   #6
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Re: не могу понять в чем прикол

А версию MIDP какую поставил?
P.S. Выложи лучше полностью проект.
(Offline)
 
Ответить с цитированием
Старый 20.11.2007, 21:39   #7
@lexxx
AnyKey`щик
 
Регистрация: 18.11.2007
Сообщений: 19
Написано 0 полезных сообщений
(для 0 пользователей)
Re: не могу понять в чем прикол

обновленный проект(таже фигня)
(Offline)
 
Ответить с цитированием
Старый 20.11.2007, 23:25   #8
EVIL_USER
ПроЭктировщик
 
Регистрация: 13.11.2006
Сообщений: 101
Написано 6 полезных сообщений
(для 6 пользователей)
Re: не могу понять в чем прикол

У меня на С75 прекрасно запустилось.
(Offline)
 
Ответить с цитированием
Старый 20.11.2007, 23:32   #9
Bruteo
ПроЭктировщик
 
Регистрация: 31.01.2007
Сообщений: 128
Написано 20 полезных сообщений
(для 43 пользователей)
Re: не могу понять в чем прикол

Поле "Midlet vendor" заполни латиницей. На телефонах проблема из-за кириллицы.
Нет типа данных "byte" в midlet pascal.
(Offline)
 
Ответить с цитированием
Старый 20.11.2007, 23:49   #10
@lexxx
AnyKey`щик
 
Регистрация: 18.11.2007
Сообщений: 19
Написано 0 полезных сообщений
(для 0 пользователей)
Re: не могу понять в чем прикол

byte я случайно ввел, хотел взять маленький тип, привык к Паскалю
(Offline)
 
Ответить с цитированием
Старый 21.11.2007, 08:47   #11
odd
Мастер
 
Аватар для odd
 
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений
(для 713 пользователей)
Re: не могу понять в чем прикол

В графическом режиме добавлять командные кнопки нельзя да и нажатия на них отлавливаться не будут. Так что убирай строки добавления кнопки Выход. Если так кортит добавить кнопку напиши что-то типа:

DrawText('Выход', GetWidth-GetStringWidth('Выход'), GetHeight-GetStringHeight('В'));
Repaint;
repeat
  Delay(20); n:=GetKeyClicked;
  if (n=-4) or (n=-7) or (n=-22) then break;
until false;
или убери переключение в графический режим (ShowCanvas), а результаты вычислений выводи на экран строкой:
ClearForm; n:=FormAddString('Длина: '+l);
(Offline)
 
Ответить с цитированием
Старый 21.11.2007, 11:21   #12
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Re: не могу понять в чем прикол

У меня на SE и так все работает.
(Offline)
 
Ответить с цитированием
Старый 22.11.2007, 23:46   #13
@lexxx
AnyKey`щик
 
Регистрация: 18.11.2007
Сообщений: 19
Написано 0 полезных сообщений
(для 0 пользователей)
Re: не могу понять в чем прикол

На Сименсе он запускается, но при одинаковой вводимой тройке чисел каждый раз выводит новый результат.
При тройке 120, 350, 40 должно выводится 21.52, а выводится что-то левое. Не могу понять че происходит.
(Offline)
 
Ответить с цитированием
Старый 23.11.2007, 15:30   #14
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Re: не могу понять в чем прикол

Попробуй добавить переинициализацию переменных перед каждым перерассчетом.
(Offline)
 
Ответить с цитированием
Старый 25.11.2007, 10:04   #15
odd
Мастер
 
Аватар для odd
 
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений
(для 713 пользователей)
Re: не могу понять в чем прикол

Всё равно, кажется это формула косячит. Учи матчасть.

 
Program rulon;
Var
 id1, id2, id3: integer;
 d1, d2, l, h, n:real;
 cmdNext, cmdExit, key: command; 
Procedure Cls;
begin
 ClearForm; SetFormTitle('Калькулятор рулонов 1.0.0');
 cmdNext := CreateCommand('Считать', CM_OK, 1); AddCommand(cmdNext);
 cmdExit := CreateCommand('Выход', CM_EXIT, 1); AddCommand(cmdExit);
end;
Begin
 ShowForm;
 repeat
  Cls;
  id1:=FormAddTextField('Диаметр рулона, (мм):', '', 5, TF_NUMERIC); 
  id2:=FormAddTextField('Толщина материала, (мкм):', '', 5, TF_NUMERIC); 
  id3:=FormAddTextField('Диаметр держателя, (мм):', '', 5, TF_NUMERIC);
  repeat Delay(20); key:=GetClickedCommand; until key <> EmptyCommand;
  if key=cmdExit then break;
  d1:=StringToInteger(FormGetText(id1)); d1:=d1/1000;
  h:=StringToInteger(FormGetText(id2)); h:=h/1000000;
  d2:=StringToInteger(FormGetText(id3)); d2:=d2/1000;
  n:=(d1-d2)/(2*h); l:=n*4.71238898*(d1-d2)/2;
  Cls; n:=FormAddString('Длина: '+l);
  repeat Delay(20); key:=GetClickedCommand; until key <> EmptyCommand;
  if key=cmdExit then break;
 until false;
End.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу понять, как оптимизировать, то, что написал.... ratttx 3D-программирование 6 05.04.2009 19:17
Не могу понять в чем ошибка KAK? TAK! MidletPascal 13 03.04.2009 15:01
прикол jimon Юмор 1 06.11.2005 19:15
прикол jimon Юмор 4 03.11.2005 18:44
Прикол SubZer0 Болтовня 6 20.09.2005 07:06


Часовой пояс GMT +4, время: 21:06.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com