Форум
» Назад на решение задач по физике и термеху
Регистрация | Профиль | Войти | Забытый пароль | Присутствующие | Справка | Поиск

» Добро пожаловать, Гость: Войти | Регистрация
    Форум
    Информационные технологии
        Турбо Паскаль. Программирование на Pascal
Отметить все сообщения как прочитанные   [ Помощь ]
» Добро пожаловать на форум "Информационные технологии" «

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 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 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 ]
Модераторы: paradise, KMA
  

Guest



Новичок

Помогите please...
В одномерном массиве Q(x) найти колличество чисел по модулю меньше заданного T?

Всего сообщений: Нет | Присоединился: Never | Отправлено: 17 мая 2006 17:54 | IP
Guest



Новичок

Помогите блин решите задачу."Проблема Голбдбаха которая предпологает что всякое целое число болщее илил равное 6 может быть представлена в виде трёх простых чисел.Проверьте утверждение Гольбаха для чисел не превышающих 100."А то я в PASCAL совсем не шарю.

Всего сообщений: Нет | Присоединился: Never | Отправлено: 17 мая 2006 20:48 | IP
KMA



Долгожитель


Цитата: Guest написал 17 мая 2006 20:48
А то я в PASCAL совсем не шарю.



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


Цитата: Guest написал 17 мая 2006 20:48
В одномерном массиве Q(x) найти колличество чисел по модулю меньше заданного T?  



Не ленись, посмотри сам тему массивы, и все поймешь...
k:=0;
for j:=1 to n do
if abs(a[j])<t
   then inc(k);


(Сообщение отредактировал KMA 17 мая 2006 20:55)

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 17 мая 2006 20:54 | IP
Guest



Новичок

здравствуйте, такой вопрос-нужна программа "Тренажёр печатания на клавиатуре", не оч сложная. И ещё такой вопрос-в чём хранить буквы, которые будут выводиться(если учесть что будет несколько уровней сложности). Я думал в массиве: ну например один массив половина букв, а второй все, ну и взависимости от выбора рандомно выдавать буквы, но как выбрать тот или иной массив? прировнять их можно, например присвоить массиву 1 второй?

Всего сообщений: Нет | Присоединился: Never | Отправлено: 18 мая 2006 20:15 | IP
miss_graffiti


Долгожитель

двумерный массив...
в первой строке - половина букв, во второй - 2/3, а в третьей - все.
когда надо - просто переходишь к след. строке.

я бы посоветовала хранить в строке.
на легких уровнях это будет экономией памяти, а обращаться к символам можно тоже по индексу.

Всего сообщений: 670 | Присоединился: сентябрь 2005 | Отправлено: 18 мая 2006 21:28 | IP
KMA



Долгожитель

Итак лучше всего это хранить в строке, если текста мало, а еще лучше, забахать все в файл (текстовый разумеется). Потом из него и читать, соответственно по строчкам. А сама система клавиатурных тренажоров построить лучше так: Выводиться на экран тест, во второй части экрана текст, который вводит пользователь. Далее если пользователь ошибнулся, значит ему выдать значение об ошибке.

На счет файла, как это все хранить. На экран у тебя по любому не вместе эти 255 символов, точнее в строчку. Поэтому создаешь текстовый файл. Из него последовательно считываешь строчки и выводишь на экран. Это текст, который должен ввести пользователь. Потом опять возвращаешься к началу этого файла. Считываешь первую строку в переменную типа string, далее сравниваешь введенный символ с символом, который ввел пользователь, и так пока строка не закончиться. Потом опять считываешь в ту же переменную из файла следующую строку, и опять сравниваешь...
Думаю, разберешься, иначе, пиши сюда, только с исходниками.

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 18 мая 2006 22:31 | IP
fess


Удален

valera24  



var a:array [1..100] of integer;
   n,i,c,t,g:integer;
begin
randomize;         {включаем генератор случайных чисел}
readln (n);        {вводим n - кол-во эл-в массива}
t:=n+1;            {задаем переменной t значение больше n - это если нулей в массиве не окажется}
for i:=1 to n do   {цикл}
begin
  a{{i]:=random (2)-1; {заполнение массива случайными числами (в данном случае, это 1,0 или -1)}
  if a{{i]>=0 then     {условие на выявление положительных эл-в}
             inc(c);  {подсчет этих самых эл-в}
  if a{{i]=0  then     {поиск последнего нуля}
             t:=i;    {если он есть - записываем его номер порядка в массиве}
  write (a{{i]:4);     {выводим массив на экран ­}
end;
for i:=t to n do       {цикл для получения суммы эл-в, стоящих после нуля. Здесь  перебирается номера эл-в, начиная с уже ранее запомненного номера нуля. Если бы нуля нет, то цикл не работает. См. выше, там стоит (по умолчанию) значение t}
g:=a{{i]+g;            {вычисляем сумму}
writeln;
writeln (c,' - кол-во положит-х эл-в массива ');                        {вывод ответов}
writeln (g,' - сумма эл-в массива, до нуля');
readln;
end.



"Преобразовать массив таким образом, чтобы сначала располагались все элементы, Целая часть которых не превышает единицу, а потом — все остальные" блин, не совсем понятно. Числа ж тут уже целые. Короче, сначала все элементы, меньше единицы, а, затем, остольные. Так?

P.S. Это задание - твоя курсовая????

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 19 мая 2006 17:38 | IP
KMA



Долгожитель

fess  
в следующий раз вместо i в квадратных скобках, пиши в {}, так ты пишешь в курсивом, ну так получается.

И еще, если ты не знаешь как объявить массив вещественных чисел, то это уже твои проблемы, тут задача совершенно по другому решается, в условии не оговариволось что массив целых чисел, отсюда и непонятки, внимательней читай задачу.

Ты уже знаешь сам массив, его задает пользователь и он дробный, потом используя trunc ты находишь целую часть, а потом сравниваешь. Вот и все. Ты так -то написал все верно, только не учел этого.

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 19 мая 2006 19:56 | IP
Guest



Новичок

Есть задача если кто то поможет буду очень благодарен, сам че то никак!
СБЕРЕГАТЕЛЬНАЯ КНИЖКА

ОПИСАНИЕ

Программный проект моделирует работу отдела банка по учету вкладов его клиентов. Каждая сберегательная книжка имеет следующие графы:
. номер сберегательной книжки;
. фамилия, имя, отчество клиента;
. домашний адрес;
. дата;
. остаток денежной суммы;
. выплаченную/внесенную в указанную дату сумму.
В каждой сберегательной книжке хранится не более 5 записей. Сберегательные книжки клиентов хранятся в файле klient.sum. Кроме того, другой файл klient.1st содержит каталог сберегательных книжек в банке. Прикладная программа содержит следующие процедуры и функции:
•Остаток (функция запрашивает фамилию, имя и отчество клиента и возвращает остаток на счету указанного клиента);
•Открыть Счет (процедура открывает счет для нового клиента);
• Ликвидировать Счет (По желанию клиента, снявшего со счета всю сумму вклада,счет ликвидируется, а в каталоге сберегательных книжек банка делается пометка о ликвидации данного счета. Из файла klient. sum содержимое соответствующей сберегательной книжки не удаляется. Эти данные можно, например, в дальнейшем использовать для подготовки годового отчета о деятельности банка);
•Выплатить (процедура запрашивает фамилию, имя, отчество клиента, а также величину снимаемой со счета суммы и причину съема). Если на счете денег не осталось, процедура запрашивает, нужно ли ликвидировать счет. Перед внесением изменений в сберегательную книжку, процедура просит подтверждения: "Вы уверены, что сумма уже выдана клиенту?";
•Внести (процедура запрашивает фамилию, имя, отчество клиента, а также величину вносимого вклада). Если указанный клиент не найден, процедура запрашивает, нужно ли открыть новый счет. Перед внесением изменений в сберегательную книжку, процедура просит подтверждения: "Вы уверены, что сумма уже внесена клиентом?";
•Показать (процедура выводит на экран содержимое сберегательной книжки указанного клиента в виде стандартного бланка с графами Дата Взноса, Сумма, Кто выдал/принял; Остаток.
ВХОД
Ввод данных в программу осуществляется в диалоге по запросам программы. Оператор программы инициирует запуск той или иной процедуры нажатием функциональных клавиш.
ВЫХОД
Вывод результатов выполнения программы осуществляется согласно описаниям процедур, приведенным выше.
ОШИБКИ
Ошибки ввода при диалоге должны приводить к повторению диалога.
Если число записей в книжке превышает 15, выдается сообщение об ошибке "Сберегательная книжка заполнена. Вам необходимо зарегистрировать новый вклад".

Всего сообщений: Нет | Присоединился: Never | Отправлено: 20 мая 2006 0:36 | IP
KMA



Долгожитель

Так задача стандартная, решается легко и просто, только долго. С чего Guest начнем?

Начнем пожалуй с самого простого, это с оформлений данных, итак, лучше всего создать типизированный файл, с соответствюущими полями. Такое данное, будет аналогично модели сберегательной книжки, описанной выше. Итак, давай попробуем создать такие данные, лучше начать с объявление типа, т. е. с описанния данного:

Type
     date=record
       day: 1..31;
        month: 1..12;
        year: 1991..2100;
     end;
     book=record
        number: word;
        FIO: string [40];
        adress: string [20];
        mods: word; // остаток
        dates: date;
      end;

Там немного не дописал, главное смысл уловить, теперь должны создать файл этого типа, и массив для удобства (только для этого) из 15 элементов, или сколько у тебя там возможных пользователей?
Ну а дальше процедуры и функции, которые описал, если чего не понятно, ты обращайся.

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 20 мая 2006 1:48 | IP

Эта тема закрыта, новые ответы не принимаются

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 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 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 ]

Форум работает на скрипте © Ikonboard.com