0 / 0 / 2
Регистрация: 12.12.2011
Сообщений: 17
1

На гласную или согласную оканчивается слово

12.12.2011, 00:39. Показов 1480. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
нужно написать программу,которая определяла бы на гласную или согласную оканчивается слово
нашел на паскале Определить, на гласную или согласную букву оканчивается слово
как переделать под делфи?
что не так?никак не работает(не могу из паскаля операторы переделать в делфи
с goto вообще беда(

Delphi
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
procedure TForm5.Button2Click(Sender: TObject);
const
  mas:array[1..6] of Char = ('a','e','i','o','u','y');
var
  st:string;
  i,num,cod:Integer;
  flag:Boolean;
begin
flag:=True;
st:=string(Edit1.Text);
Val(st[Length(st)],num,cod);
if cod=o then
begin
 label2.caption:='на цифру';
end;
  for i:=1 to 6 do
  if (st[Length(st)]=mas[i] then
  begin
    flag:=False;
    Break;
  end;
 if flag then
 Label2.caption:='согласная'
 else
 Label2.Caption:='гласная';
  end;
end;
 Комментарий модератора 
Используйте специальные теги форматирования кода!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.12.2011, 00:39
Ответы с готовыми решениями:

Строки: выяснить, на гласную или согласную оканчивается слово
Помогите решить задачу, не понимаю как сделать :help: Составьте программу, выясняющую на гласную...

Определить, на гласную или согласную букву оканчивается слово
Составьте программу, выясняющую на гласную или согласную букву оканчивается слово

Выяснить, на гласную или согласную букву заканчивается слово
Составьте программу, позволяющую выяснить на гласную или согласную букву заканчивается слово Х....

Разработать программу выясняющую на какую из букв- гласную или согласную начинается слово Х
разработать программу выясняющую на какую из букв гласную или согласную начинается слово x

16
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
12.12.2011, 00:45 2
А так?
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
procedure TForm5.Button2Click(Sender: TObject);
const
mas:array[1..6] of Char = ('a','e','i','o','u','y');
var 
  st:string;
  i:Integer;
  flag:Boolean;
begin
  flag:=true;
  st:=Edit1.Text;
  for i:=1 to 6 do
  begin
    if (st[Length(st)]=mas[i] then 
    begin
      flag:=false;
      Break;
    end;
  end;
  if flag then  Label2.caption:='согласная'
  else  Label2.Caption:='гласная';
end;
0
0 / 0 / 2
Регистрация: 12.12.2011
Сообщений: 17
12.12.2011, 00:52  [ТС] 3
работает,но при любой заданной строке выдает что она оканчивается на согласную
0
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
12.12.2011, 00:58 4
Вы надеюсь не на русском текст вводите?
0
0 / 0 / 2
Регистрация: 12.12.2011
Сообщений: 17
12.12.2011, 01:25  [ТС] 5
нет,на буржуйском...все равно не работает
любой набор английских букв ввожу, получается "согласная"

Добавлено через 24 минуты
так в чем ошибка то?
0
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
12.12.2011, 01:41 6
Покажите код модуля и скрин результата.
0
5705 / 2296 / 466
Регистрация: 20.11.2009
Сообщений: 7,720
Записей в блоге: 1
12.12.2011, 01:43 7
Цитата Сообщение от Predator_2004 Посмотреть сообщение
Delphi
1
mas:array[1..6] of Char = ('a','e','i','o','u','y');
ммм y - это согласная, j - гласная, небольшое дополнение
0
0 / 0 / 2
Регистрация: 12.12.2011
Сообщений: 17
12.12.2011, 01:48  [ТС] 8
5 букв обозначают гласные звуки и 21 буква — согласные звуки.
Гласные: A, E, I, O, U (Y также иногда рассматривается как гласная)
Согласные: B, C, D, F, G, H, J, K, L, M, N, P, Q, R, S, T, V, W, X, Y, Z


не в этом дело(((
я на "а" заканчиваю слово,программа выводит "согласная"
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
procedure TForm5.Button2Click(Sender: TObject);
const
  mas:array[1..7] of Char = ('a','e','i','o','u','y','j');
var
  st:string;
  i:Integer;
  flag:Boolean;
begin
  flag:=True;
  st:=Edit1.Text;
  for i:=1 to 7 do
     begin
     if (st[Length(st)]=mas[i]) then
      begin
       flag:=False;
       Break;
      end;
      end;
 if flag then
 Label2.caption:='согласная'
 else
 Label2.caption:='гласная';
 
  end;
0
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
12.12.2011, 01:51 9
Цитата Сообщение от Arcor Посмотреть сообщение
ммм y - это согласная, j - гласная, небольшое дополнение
Нет. Y-гласная. А j - так называемая полу-гласная (semi-vowel).
0
0 / 0 / 2
Регистрация: 12.12.2011
Сообщений: 17
12.12.2011, 01:52  [ТС] 10
а в коде что не так?
0
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
12.12.2011, 01:53 11
Цитата Сообщение от LostPulse Посмотреть сообщение
а в коде что не так?
Все так. У меня работает.
0
0 / 0 / 2
Регистрация: 12.12.2011
Сообщений: 17
12.12.2011, 02:17  [ТС] 12
я просто не верю((((((((((((((
целый день с другой задачей любовь занимался,теперь эта не работает(((((
что за день(((((

Добавлено через 3 минуты
можно скрин кода?
я просто не верю,что у меня не так...честно

Добавлено через 16 минут
короче говоря раз программа не идет,код не верный
ищу еще помощи(
0
1905 / 1016 / 123
Регистрация: 08.12.2009
Сообщений: 2,792
Записей в блоге: 2
12.12.2011, 03:12 13
Это точно должно сработать:
Delphi
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
unit MainUnit;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
 
const
  S1: AnsiString = 'уеэоаыяию'; // гласные
  S2: AnsiString = 'йцкнгшщзхждлрпвфчсмтб'; // согласные
 
type
  TLetterSet = Set of AnsiChar;
 
  TMainForm = class(TForm)
    txtWord: TEdit;
    Label1: TLabel;
    lblResult: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure txtWordChange(Sender: TObject);
  private
 
  public
    ls1, ls2: TLetterSet;
 
  end;
 
var
  MainForm: TMainForm;
 
implementation
 
{$R *.dfm}
 
procedure TMainForm.FormCreate(Sender: TObject);
var
  i: Integer;
begin
  // заполнение множеств нужными буквами из массивов
  ls1 := [];
  ls2 := [];
  for i := 1 to Length(s1) do
    ls1 := ls1 + [s1[i]];
  for i := 1 to Length(s2) do
    ls2 := ls2 + [s2[i]];
end;
 
procedure TMainForm.txtWordChange(Sender: TObject);
var
  s: AnsiString;
begin
  s := AnsiLowerCase(txtWord.Text);
  // проверяем вхождение символа во множества:
  If s[Length(s)] in ls1 then
    lblResult.Caption := 'Последняя буква: ГЛАСНАЯ'
  else if s[Length(s)] in ls2 then
    lblResult.Caption := 'Последняя буква: СОГЛАСНАЯ'
  else
    lblResult.Caption := 'Последняя буква: ДРУГОЙ СИМВОЛ';
end;
 
end.
К сообщению прикрепил архив с проектом. Если будет ругаться на строку
Delphi
1
Application.MainFormOnTaskBar := True;
в исходнике, то её просто убери.
Вложения
Тип файла: rar Letters.rar (3.9 Кб, 7 просмотров)
0
0 / 0 / 2
Регистрация: 12.12.2011
Сообщений: 17
12.12.2011, 08:31  [ТС] 14
спасибо)
сработала программа Predator_2004
мой косяк был в том,что я edit другой указал(
0
5705 / 2296 / 466
Регистрация: 20.11.2009
Сообщений: 7,720
Записей в блоге: 1
12.12.2011, 16:57 15
Цитата Сообщение от LostPulse Посмотреть сообщение
5 букв обозначают гласные звуки и 21 буква — согласные звуки.
Гласные: A, E, I, O, U (Y также иногда рассматривается как гласная)
Согласные: B, C, D, F, G, H, J, K, L, M, N, P, Q, R, S, T, V, W, X, Y, Z
тогда прошу прощения, я просто не знал, что немецкий алфавит имеет отличие от латинского алфавита, только дополнен еще 3 буквами ä, ö, ü
0
HighPredator
12.12.2011, 20:14
  #16

Не по теме:

В немецком, кстати, если память мне не изменяет j как раз согласная.

0
5705 / 2296 / 466
Регистрация: 20.11.2009
Сообщений: 7,720
Записей в блоге: 1
12.12.2011, 20:17 17
Цитата Сообщение от Predator_2004 Посмотреть сообщение

Не по теме:

В немецком, кстати, если память мне не изменяет j как раз согласная.

Не по теме:


да вроде в немецкой школе считали ее гласной :scratch:, ай да фиг с ней тогда ]:-> в коде это все равно ничего не меняет :D

0
12.12.2011, 20:17
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.12.2011, 20:17
Помогаю со студенческими работами здесь

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

Если слово текста заканчивает- ся на согласную, добавить данную согласную и букву “ay” в конце строки
Программно создайте текстовый файл file1.txt, в который запишите фрагмент поэмы, в заданном...

Начинается и оканчивается слово на одну и ту же букву или нет.
Дано слово, проверить начинается и оканчивается слово на одну и ту же букву или нет)

Найти первую гласную и последнюю согласную затем удалить всё между ними
Создать текстовый файл, записать туда строку с любыми символами. Найти В ФАЙЛЕ первую гласную из...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru