Консультация № 160089
10.02.2009, 13:09
0.00 руб.
0 3 2
Здравствуйте, уважаемые эксперты! Мне в задаче надо заменить маленькие латинские буквы на прописные (если я ошибусь, то правильно а заменать на А, program на PROGRAM и т. д.) для считывания слова я использую одну переменную а, типа String. а как заменить на большие? и ещё. какая функция извлекает корень из числа?
За ответы заранее благодарен.

Обсуждение

Неизвестный
10.02.2009, 14:12
общий
10.02.2009, 14:20
это ответ
Здравствуйте, Хощенко Артём Владимирович!

Насколько я помню в паскале нет функции которая переводит строчный буквы в прописные и наоборот, поэтому это можно зделать следующим образом, чтобы преобразовать а -> А, достаточно из номера символа вычесть 32, наоборот прибавить 32. оба варианта в приложении. Для сравнения.
В задаче использовано множество для проверки на коррекные символы (буквы).

Корень квадратный можно извлечь с помощью функции SQRT(x);

Удачи.

Приложение:
uses crt;
var s:string;
i:integer;
begin
clrscr;
writeln('Введите строку.');
readln(s);
writeln;
for i:=1 to length(s) do
if s[i] in ['a'..'z'] then
begin
s[i]:=chr(ord(s[i])-32);
end;
write(s);
readln;
end.



uses crt;
var s:string;
i:integer;
begin
clrscr;
writeln('Введите строку.');
readln(s);
writeln;
for i:=1 to length(s) do
if s[i] in ['A'..'Z'] then
begin
s[i]:=chr(ord(s[i])+32);
end;
write(s);
readln;
end.
Неизвестный
10.02.2009, 17:33
общий
это ответ
Здравствуйте, Хощенко Артём Владимирович!
Программа очень простая. Без комментариев.

Приложение:
program Pascal_160089;
var
str:String;
i:Integer;
begin
WriteLn('Enter string:');
ReadLn(str);
for i := 1 to Length(str) do
str[i]:=UpCase(str[i]); { Upcase() - приводит к верхнему регистру }
WriteLn(str);
ReadLn;
end.
Неизвестный
10.02.2009, 17:34
общий
Костя Симанович, есть такая функция называется UpCase()
Форма ответа