Ввести имя файла и изменить его ** расширение ".exe". Помогите дописать задачу: program...

0 голосов
127 просмотров

Ввести имя файла и изменить его на расширение ".exe". Помогите дописать задачу:
program qq;
var s:string;
n: integer;
begin
s:=('Привет.txt');
read(s);
n:=Pos('.',s);
Pelete(s,n+1,3);
s:=


Информатика (22 баллов) | 127 просмотров
Дано ответов: 2
0 голосов
Правильный ответ
// PascalABC.NET 3.3, сборка 1611 от 06.01.2018
// Внимание! Если программа не работает, обновите версию!

begin
  var s:=ReadlnString;
  var p:=LastPos('.',s);
  if p=0 then s+='.exe'
  else s:=s[:p+1]+'exe';
  Writeln(s)
end.

Примеры
Привет.txt
Привет.exe

D:\Files\MyDir\Salut.html
D:\Files\MyDir\Salut.exe

Щас укушу
Щас укушу.exe
(150k баллов)
0 голосов

Замечание: предполагается, что в имени файла нет ".".
program qq;
var s:string;
begin
writeln('Введите имя файла:');
readln(s);
s:=copy(s,1,pos('.',s))+'exe';
writeln(s);
end.

Пример:
Введите имя файла:
Привет.txt
Привет.exe

(194k баллов)
0

А возможно написать эту задачу используя это:

0

n:=Pos('.',s);
Pelete(s,n+1,3);

0

Нет такого Pelete(s,n+1,3); Есть Delete()

0

Ну тогда :n:=Pos('.',s);
Delete(s,n+1,3);

0

Возможно написать эту задачу используя это: n:=Pos('.',s);
Delete(s,n+1,3);?

0

Существует много способов решить эту задачу. Если использовать n:=Pos('.',s); и Delete(s,n+1,3); получится сложнее и длиннее.