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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.06.2010, 21:24   #1
Dilmur
Новичок
Джуниор
 
Регистрация: 10.06.2010
Сообщений: 2
По умолчанию нужно подкорректировать!

Даны натуральное число n, символ s (n<=1000, s - одна из букв и,р,д,в,т,п указывающая падеж - именительный, родительный, дательный ,винительный, творительный, предложный). Запистать количественное числительное, обозначающее n, в соответствующем падеже. Все это записать в текстовый файл. Помогите пожалуйста, срочно нужна задача..Спасибо всем заранее.

вот я качал задачу с этого форума но она раоботает только для трех падежей!!НУЖНО ЧТОБ РАБОТАЛИ ВСЕ 6 ПАДЕЖЕЙ! НАРОД ПОМОГИТЕ СРОЧНО!!!:

uses crt;
вот текстовый файл ----> Вложение 33262
type Tmas=array[1..4] of byte;
var f:text;
Edn:array[1..19,1..6] of string[15];
Des:array[1..8,1..6] of string[10];
Sot:array[1..9,1..6] of string[10];
Chis:word;
Pad:char;
Cif:Tmas;
IndPad:byte;
i,j:integer;
procedure CifRaz(z:word;var x:Tmas);
var k,c:byte;
q:Tmas;
begin
k:=0;
while z>0 do
begin
c:=z mod 10;
inc(k);
q[k]:=c;
z:=z div 10;
end;
for i:=1 to 4 do
x[i]:=q[5-i];
end;
begin
clrscr;
repeat
write('Vvedite naturalnoe chislo <=1000: ');
readln(Chis);
until (Chis>0)and(Chis<=1000);
CifRaz(Chis,Cif);
repeat
write('Vvedite padezh (i, r, d, v, t, p): ');
readln(Pad);
until (Pad='i')or(Pad='r')or(Pad='d')or(P ad='v')or(Pad='t')or(Pad='p');
case Pad of
'i':IndPad:=1;
'r':IndPad:=2;
'd':IndPad:=3;
'v':IndPad:=4;
't':IndPad:=5;
'p':IndPad:=6;
end;
assign(f,'dadez.txt');
reset(f);
for i:=1 to 19 do
begin
for j:=1 to 3 do
begin
readln(f,Edn[i,j]);
{write(Edn[i,j],' ');}
end;
end;
for i:=1 to 8 do
for j:=1 to 3 do
readln(f,Des[i,j]);
for i:=1 to 9 do
for j:=1 to 3 do
readln(f,Sot[i,j]);
if Cif[1]=0 then write('')
else
case IndPad of
1:write('odna tisyacha ');
2:write('odnoi tisyachi ');
3:write('odnoi ticyache ');
4:write('odna ticyacha ');
5:write('odnoi ticyachju ');
6:write('Odnoi tisyache ');
end;
if Cif[2]=0 then write('')
else write(Sot[Cif[2],IndPad],' ');
if Cif[3]=0 then write('')
else if (Cif[3]=1)and(Cif[4]<>0)then write(Edn[Cif[4]+10,IndPad])
else if (Cif[3]=1)and(Cif[4]=0)then write(Edn[10,IndPad])
else write(Des[Cif[3]-1,IndPad],' ');
if (Cif[4]<>0)and(Cif[3]<>1) then write(Edn[Cif[4],IndPad]);
close(f);
readln
end.
Dilmur вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
подкорректировать прогу на делфи-сортировка в стрингриде west.by Общие вопросы Delphi 5 10.06.2010 00:31
Подкорректировать программу wrmarw Паскаль, Turbo Pascal, PascalABC.NET 5 04.05.2010 14:06
Можно ли подкорректировать программу, имея только ехе-шник? dmitriy777 Помощь студентам 5 22.02.2010 11:52
"сортировка" при этом нужно нужно определить время рассортировки worshewitin Помощь студентам 4 12.05.2009 20:42