Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.03.2011, 14:39   #1
Andrey770
Пользователь
 
Регистрация: 11.03.2011
Сообщений: 83
По умолчанию В строке символов определить символы, которые встречаются по одному разу

В строке символов определить символы, которые встречаются по одному разу и вывести на экран их номера их позиции.
Вот набросал до первого условия и облом
Незнаю что дальше..
Код:
uses crt;
var
    txt:string;
    l,i:integer;
begin
clrscr;
writeln('Введите текст:');
readln(txt);
l:=length(txt);
for i:=1 to l do begin

end.
Здесь, наверное, нужно что бы оно сравнивало символы поочереди..А как это записать, что бы все было поочереди я незнаю..
Andrey770 вне форума Ответить с цитированием
Старый 26.03.2011, 16:09   #2
Astorius
 
Регистрация: 26.03.2011
Сообщений: 7
По умолчанию

можно конечно так
Код:
count:=0;
    position:=0;
    for i:= 1 to length(s) do begin
        for j:=1 to length(s) do begin
            if (s[i] = s[j]) then inc(count);
            if (count = 1) and (j = length(s)) then begin
               inc(position);
               write(position, '. ');
               write(s[i],' ');
               write(i,';   ');
               writeln;
            end;
        end;
        count:=0;
    end;
хотя и не красиво

Последний раз редактировалось Astorius; 26.03.2011 в 16:11.
Astorius вне форума Ответить с цитированием
Старый 26.03.2011, 16:11   #3
OCTAGRAM
Oldschool geek
Форумчанин
 
Аватар для OCTAGRAM
 
Регистрация: 09.03.2009
Сообщений: 611
По умолчанию

Первого условия здесь тоже нет.

Алгоритм:
Заводим две штуки array[Char] of Integer, заполняем оба массива нулями. Первый массив хранит количество символов, второй — последнюю позицию такого встреченного символа.

Пробегаемся for'ом по всем символам в строке. Для каждого символа увеличиваем число в счётчике, а также обновляем последнюю позицию во втором массиве.

Когда всё закончено, перебираем коды символов от #0 до #255. Если в первом массиве единичка, выводим число из второго массива. Последняя позиция — она же и единственная для таких символов.
If you want to get to the top, you have to start at the bottom

http://pascal.net.ru/
OCTAGRAM вне форума Ответить с цитированием
Старый 26.03.2011, 16:23   #4
Astorius
 
Регистрация: 26.03.2011
Сообщений: 7
По умолчанию

По моему, это слишком сложно.
Astorius вне форума Ответить с цитированием
Старый 26.03.2011, 16:29   #5
Andrey770
Пользователь
 
Регистрация: 11.03.2011
Сообщений: 83
По умолчанию

всем спасибо конечно, но можна как-нибудь по проще записать, а то все таки только первый год Паскаль учим))
Andrey770 вне форума Ответить с цитированием
Старый 26.03.2011, 16:38   #6
Акоб
Форумчанин
 
Регистрация: 10.01.2011
Сообщений: 243
По умолчанию

inc(count) и inc(position) что это такое?
Акоб вне форума Ответить с цитированием
Старый 26.03.2011, 16:40   #7
Astorius
 
Регистрация: 26.03.2011
Сообщений: 7
По умолчанию

count это количество букв одинаковых, а позишн это просто порядковый номер
на красивый тру код я не претендую

Последний раз редактировалось Astorius; 26.03.2011 в 16:45.
Astorius вне форума Ответить с цитированием
Старый 26.03.2011, 18:51   #8
Акоб
Форумчанин
 
Регистрация: 10.01.2011
Сообщений: 243
По умолчанию

Что такое inc?
Акоб вне форума Ответить с цитированием
Старый 26.03.2011, 21:18   #9
Astorius
 
Регистрация: 26.03.2011
Сообщений: 7
По умолчанию

мэд кэт, спасибо за код, разобрался.
красиво.
Astorius вне форума Ответить с цитированием
Старый 26.03.2011, 21:18   #10
Astorius
 
Регистрация: 26.03.2011
Сообщений: 7
По умолчанию

увжаемые модераторы, удалите пожалуйста это сообщение

Последний раз редактировалось Astorius; 26.03.2011 в 21:22.
Astorius вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
определить количество символов и пробелов в строке без использования string.h Alena_897 Помощь студентам 5 07.12.2010 18:40
Дана строка символов, содержащая слова. Определить количество слов, последний и предпоследний символы кот RamZax Паскаль, Turbo Pascal, PascalABC.NET 2 17.06.2010 14:06
Си. Вычеркнуть из слова X те буквы, которые встречаются в слове Z. hen Помощь студентам 1 29.04.2009 15:32
Из заданной символьной строки, выбрать те символы, которые встречаются в ней только один раз... Banny Паскаль, Turbo Pascal, PascalABC.NET 3 19.12.2008 06:15