Объясните новичку.

Форум для изучающих FPC и их учителей.

Модератор: Модераторы

Re: Объясните новичку.

Сообщение Paster Fob » 10.12.2011 18:28:59

teapot писал(а):Paster Fob, мне тоже далеко за 20 и я в качестве хобби изучаю (вернее, пытаюсь вспомнить школьный курс) паскаль по книге уважаемого Олега. Хоть Вас давно не было на форуме, позвольте присоединиться.

Да я давно не писал на форуме и не задавал вопросы.Просто мало времени остаётся на учёбу.Но это не значит что я бросил изучать Паскаль.
Аватара пользователя
Paster Fob
постоялец
 
Сообщения: 188
Зарегистрирован: 22.02.2011 21:53:36
Откуда: Новосибирск.

Re: Объясните новичку.

Сообщение teapot » 19.12.2011 16:11:50

Привет! У меня тоже мало времени. А еще обнаружилось и незнание математики. Ведь программирование для меня это просто хобби.
Аватара пользователя
teapot
незнакомец
 
Сообщения: 7
Зарегистрирован: 13.11.2011 15:20:23

Re: Объясните новичку.

Сообщение Андрей131289 » 27.12.2011 00:18:35

Подскажите пожалуйста, как написать массив величины, вводимой с клавиатуры?
Андрей131289
незнакомец
 
Сообщения: 6
Зарегистрирован: 27.11.2011 13:02:56

Re: Объясните новичку.

Сообщение Little_Roo » 27.12.2011 02:10:06

Андрей131289 писал(а):как написать массив величины, вводимой с клавиатуры?

Ввести (ой, просмотрел написать)массив символов с клавиатуры можно в Блокноте, или в Ворде... :D
Читаем доки, они рулез :shock: .....или правильно формулируем проблемку.
Аватара пользователя
Little_Roo
энтузиаст
 
Сообщения: 639
Зарегистрирован: 27.02.2009 19:56:36
Откуда: Санкт-Петербург

Re: Объясните новичку.

Сообщение tema » 27.12.2011 10:37:19

Андрей131289 писал(а):Подскажите пожалуйста, как написать массив величины, вводимой с клавиатуры?

Код: Выделить всё
var
a:array of integer;
n:integer;
begin
readln(n);
setlength(a,n);
.....
tema
постоялец
 
Сообщения: 375
Зарегистрирован: 24.03.2011 20:19:27

Re: Объясните новичку.

Сообщение Андрей131289 » 29.12.2011 00:42:49

Для начала спасибо за прошлый совет...
Скажите еще, как найти все числа которые входят в массив по одному разу?
Андрей131289
незнакомец
 
Сообщения: 6
Зарегистрирован: 27.11.2011 13:02:56

Re: Объясните новичку.

Сообщение tema » 29.12.2011 12:01:07

Тебя что в гугле забанили?
В лоб:
Код: Выделить всё
for i:=1 to n do
begin
k:=0;
for j:=i to n do
  if a[i]=a[j] then inc(k);
if k=1 then writeln(a[i]);
end;
tema
постоялец
 
Сообщения: 375
Зарегистрирован: 24.03.2011 20:19:27

Re: Объясните новичку.

Сообщение Oleg_D » 29.12.2011 14:26:35

Похожая задача рассматривалась в этом топике: http://freepascal.ru/forum/viewtopic.php?f=23&t=6931

Решение от tema имеет квадратичную сложность, но зато не требует дополнительной памяти.
Вот другое решение (для положительных чисел), сложность линейная, но используется массив.

Код: Выделить всё
const CSize = ...; // размер массива

var
Numbers: array [0...CSize] of integer; // обрабатываемый массив
Counts: array [0...MaxInt] of integer; // массив счетчиков
i : integer;

begin
FillChar(Counts, SizeOf(Counts), 0); // очистка счетчиков
// накопление счетчиков (число в массиве - это индекс счетчика)
for i:=0 to CSize-1 do Inc( Counts[ Numbers[i] ] );
// Пробегаем по массиву Counts и выбраем те, что содержат единицу
for i:=0 to MaxInt do if Counts[i]=1 then Writeln(i);
end.
Oleg_D
постоялец
 
Сообщения: 391
Зарегистрирован: 09.05.2011 11:28:36

Re: Объясните новичку.

Сообщение Paster Fob » 10.01.2012 15:55:02

Андрей131289 писал(а):Подскажите пожалуйста, как написать массив величины, вводимой с клавиатуры?

Вот и у меня такая же беда,математика тесно связана с программированием,вот только ни фига не помню итз курса школы,хорошо что у меня мама математик,мне объясняет что к чему.
Аватара пользователя
Paster Fob
постоялец
 
Сообщения: 188
Зарегистрирован: 22.02.2011 21:53:36
Откуда: Новосибирск.

Re: Объясните новичку.

Сообщение Leontev » 17.01.2012 17:31:51

Возник такой вопрос. В Turbo Pascal можно набирать символы с помощью Alt+<код символа>, что удобно при работе с псевдографикой. Есть ли что-то подобное в Geany?
Leontev
новенький
 
Сообщения: 30
Зарегистрирован: 16.01.2012 20:56:32
Откуда: Санкт-Петербург

Re: Объясните новичку.

Сообщение VirtUX » 17.01.2012 18:08:40

Если ОС - Windows, то в любом окне должна работать эта комбинация. Хотя может Geany спицифическая....

·▒▓░■¤ - набрал этим методом
Аватара пользователя
VirtUX
энтузиаст
 
Сообщения: 880
Зарегистрирован: 05.02.2008 10:52:19
Откуда: Крым, Алушта

Re: Объясните новичку.

Сообщение Leontev » 17.01.2012 18:39:51

ОС Simply Linux 6.
Leontev
новенький
 
Сообщения: 30
Зарегистрирован: 16.01.2012 20:56:32
Откуда: Санкт-Петербург

Re: Объясните новичку.

Сообщение Paster Fob » 04.02.2012 08:17:52

Доброго времени суток.Вот такой вопрос у меня.В компиляторе FPC иногда курсор вместо чёрточки становится маленьким прямоугольником вытянутым вверх,как это убрать?
Аватара пользователя
Paster Fob
постоялец
 
Сообщения: 188
Зарегистрирован: 22.02.2011 21:53:36
Откуда: Новосибирск.

Re: Объясните новичку.

Сообщение Nik » 04.02.2012 09:12:49

Paster Fob писал(а):.В компиляторе FPC иногда курсор вместо чёрточки становится маленьким прямоугольником вытянутым вверх,как это убрать?

Нажать Insert?
Аватара пользователя
Nik
энтузиаст
 
Сообщения: 573
Зарегистрирован: 04.02.2006 00:08:09
Откуда: Киров

Re: Объясните новичку.

Сообщение Paster Fob » 04.02.2012 14:06:00

о спасибо за подсказку,а для чего это надо?
Аватара пользователя
Paster Fob
постоялец
 
Сообщения: 188
Зарегистрирован: 22.02.2011 21:53:36
Откуда: Новосибирск.

Пред.След.

Вернуться в Обучение Free Pascal

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 18

Рейтинг@Mail.ru