Тернопіль - Форум Файного Міста
Назад   Тернопіль - Форум Файного Міста > Комп'ютерні обговорення: Hard, Soft, Nets, Design, CAD etc > Програмування

Програмування системне, прикладне, web, макро, процедурне ... на різних рівнях


Turbo Pascal

Відповідь
 
Параметри теми Пошук у темі Параметри перегляду
Старий 07.02.2017, 15:33 #2677103   #1
Mr_RAS
 
Аватар для Mr_RAS
Типово Turbo Pascal

Ох і забув я цей раритет )))

Задача 1. Скласти програму, яка перевіряє чи дві задані стрічки є "родичами". Будемо говорити що дві стрічки є "родичами", якщо для їх запису використовують однакові символи. Прикладом таких стрічок можуть бути наступні: "баран" і "барабан".

Думаю спочатку знайти унікальні символи, а потім їх посортувати, тобто
баран > барн > абнр
барабан > барн > абнр

нас > нас > анс
ананас > анс > анс

Унікальні зробив
Код PHP:
program proba2;
uses crt;
var 
s1,s2string;
{
$I c:\tp71\unique.inc}    
begin
clrscr
;
s1 := 'baraban';
s2 := unique(s1);

writeln(s1' - Unique string: 's2);
readln;
end
unique.inc
Код PHP:
function unique (sstring): string;
var 
iinteger;
    
tstring;
begin
  t 
:= '';
  for 
i:=1 to length(s1) do
    if 
pos(s[i],t) = 0 then t := s[i];
  
unique := t;
end
тепер треба якось посортувати)

Востаннє редагував Mr_RAS: 07.02.2017 о 17:29.
Mr_RAS зараз поза форумом  
Офтопів до посту: 2  Офтоп  
Старий 07.02.2017, 21:36 #2677183   #2
castor
Типово Відповідь: Turbo Pascal

юзай set of char - він для того придуманий
castor зараз поза форумом  
Офтопів до посту: 0  Офтоп  
Старий 08.02.2017, 20:23 #2677317   #3
castor
Типово Відповідь: Turbo Pascal

до речі, прикинув х до носа на пітоні, з множинами

Код:
def unique(s):
    return {c for c in s}

s1 = 'baraban'
s2 = 'rababan'

related = unique(s1) == unique(s2)

print '{} is related to {}'.format(s1, s2) if related else '{} is not related to {}'.format(s1, s2)
висновок - вибирайте адекватні структури даних
castor зараз поза форумом  
Офтопів до посту: 0  Офтоп  
Старий 08.02.2017, 20:27 #2677318   #4
Mr_RAS
 
Аватар для Mr_RAS
Типово Відповідь: Turbo Pascal

то шкільна лаболаторка, турбо паскаль, вічна йому память ))))
25 років тому вийшла 7 версія )))
Mr_RAS зараз поза форумом  
Офтопів до посту: 0  Офтоп  
Старий 08.02.2017, 20:37 #2677321   #5
castor
Типово Відповідь: Turbo Pascal

Цитата:
Допис від Mr_RAS Переглянути допис
то шкільна лаболаторка, турбо паскаль, вічна йому память ))))
25 років тому вийшла 7 версія )))
давнє - не означає погане

Паскаль був спочатку розроблений як мова для навчання програмуванню і з цієї т.з. він доволі непогано справлявся - заставляв людей виписати алгоритм і скласти коректну програму
castor зараз поза форумом  
Офтопів до посту: 0  Офтоп  
Старий 10.02.2017, 21:17 #2677630   #6
sector119
Smile Відповідь: Turbo Pascal

Цитата
Допис від castor Переглянути допис
до речі, прикинув х до носа на пітоні, з множинами

Код:
def unique(s):
    return {c for c in s}

s1 = 'baraban'
s2 = 'rababan'

related = unique(s1) == unique(s2)

print '{} is related to {}'.format(s1, s2) if related else '{} is not related to {}'.format(s1, s2)
висновок - вибирайте адекватні структури даних
set(s1) == set(s2)
sector119 зараз поза форумом  
Подякував(ла):
castor (10.02.2017)
Офтопів до посту: 0  Офтоп  
Старий 10.02.2017, 22:38 #2677647   #7
castor
Типово Відповідь: Turbo Pascal

Цитата
Допис від sector119 Переглянути допис
set(s1) == set(s2)
о, тим більше - щось не подумав, що сет можна ініціалізувати з iterable
castor зараз поза форумом  
Офтопів до посту: 0  Офтоп  
Відповідь



Ваші права у розділі
Ви не можете створювати теми
Ви не можете писати дописи
Ви не можете долучати файли
Ви не можете редагувати дописи

BB-код є Увімк.
Усмішки Увімк.
[IMG] код Увімк.
HTML код Вимк.

Швидкий перехід


vBulletin 3.8.7 ; Переклад: © Віталій Стопчанський, 2003-2024 Форум Файного Міста Тернопіль
VBSilver style released under GPL by TC Port of subSilver released by and copyright of phpBB
е-mail адміністратора серверу
Часовий пояс GMT +2. Поточний час: 08:17.