Задание 1
Отобразить введенную пользователем строку.
Листинг на autoit.
$text = InputBox("Ввод сообщения","Введите что-нибудь")
msgbox(0,"сообщение",$text)
Задание 2
Реализовать переворот строки.
Листинг на autoit.
$text = "привет"
$rtext = ""
for $i = StringLen($text) to 0 step -1
$rtext = $rtext & StringMid($text,$i,1)
next
msgbox(0,"сообщение",$rtext)
Задание 3
Реализовать переворот строки введенной пользователем,а не включенной в тело программы.
Листинг на autoit.
$text = InputBox("Ввод сообщения","Введите что-нибудь")
$rtext = ""
for $i = StringLen($text) to 0 step -1
$rtext = $rtext & StringMid($text,$i,1)
next
msgbox(0,"сообщение",$rtext)
Задание 4
Добавить после каждого символа в строке пробел.
Листинг на autoit.
$text = InputBox("Ввод сообщения","Введите что-нибудь")
$rtext = ""
for $i = 0 to StringLen($text)
$rtext = $rtext & " " & StringMid($text,$i,1)
next
msgbox(0,"сообщение",$rtext)
Задание 5
Найти числа в строке и вывести последовательно их.
Листинг на autoit.
$text = InputBox("Ввод сообщения","Введите что-нибудь")
$rtext = ""
for $i = 0 to StringLen($text)
$s = StringMid($text,$i,1)
if Asc($s) > 47 and Asc($s) < 58 then $rtext = $rtext & $s
next
msgbox(0,"В строке имеются следующие цифры",$rtext)
Задание 6
Записать строку введенную пользователем в файл test.txt с обнулением данных в нём.
Листинг на autoit.
$text = InputBox("Ввод сообщения","Введите что-нибудь")
$hFileOpen = FileOpen("test.txt", 2) ; параметр 2 обнуляет файл
FileWrite($hFileOpen,$text)
Задание 7
Записать строку введенную пользователем в файл test.txt с добавлением данных в конец.
Листинг на autoit.
$text = InputBox("Ввод сообщения","Введите что-нибудь")
$hFileOpen = FileOpen("test.txt", 1) ; параметр 1 позволяет добавить данные в конец файла
FileWrite($hFileOpen,$text)
Задание 8
Найти числа в строке и исключить их из вывода на экран.
Листинг на autoit.
$text = InputBox("Ввод сообщения","Введите что-нибудь")
$rtext = ""
for $i = 0 to StringLen($text)
$s = StringMid($text,$i,1)
if Not(Asc($s) > 47 and Asc($s) < 58) then $rtext = $rtext & $s
next
msgbox(0,"В строке имеются следующие символы",$rtext)
Задание 9
Вывести данные из файла на экран,если его размер меньше 10 байтов.
Листинг на autoit.
$text = InputBox("Ввод сообщения","Введите имя файла","test.txt")
$hFileOpen = FileOpen($text, 0)
if FileGetSize($text) < 10 then
$sFileRead = FileRead($hFileOpen)
msgbox(0,"содержимое файла",$sFileRead)
Else
msgbox(0,"сообщение","размер файла больше 10 байт")
endif
Задание 10
Запустить файл в блокноте,если такой файл существует.
Листинг на autoit.
$ftext = InputBox("Ввод имени файла","Введите имя файла","test.txt")
if FileExists($ftext) Then
ShellExecute($ftext)
Else
msgbox(0,"сообщение","такого файла не существует")
endif
Задание 11
Переместить мышь в левый верхний угол по нажатию горячей клавиши Escape.
Листинг на autoit.
HotKeySet ( "{ESC}" , "Mousefunc" )
Func Mousefunc()
MouseMove(0, 0)
EndFunc
While 1
WEnd
Задание 12
Дать пользователю ввести координаты мыши и узнать,существует ли такая позиция экрана для курсора.
Листинг на autoit.
$coordX = InputBox("Ввод координаты X","Введите координату X","0")
$coordY = InputBox("Ввод координаты Y","Введите координату Y","0")
if @DesktopWidth >= $coordX and @DesktopHeight >= $coordY Then
msgbox(0,"сообщения","такая координата на экране существует")
Else
msgbox(0,"сообщения","такая координата на экране не существует")
Endif
Задание 13
Дать возможность ввести пользователя размер пароля и сгенерировать пароль из случайных строчных букв.
Листинг на autoit.
$sizepassword = InputBox("Ввод длины пароля","Введите длину пароля")
$sText = ""
For $i = 1 To $sizepassword
$sText &= Chr(Random(65,90, 1))
Next
msgbox(0,"сообщение пароля",$sText)
Задание 14
По нажатию горячей клавиши Escape - перезагрузить операционную систему.
Листинг на autoit.
HotKeySet ( "{ESC}" , "somefunc" )
Func somefunc()
Shutdown(6)
EndFunc
While 1
WEnd
Задание 15
Вывести имена текстовых файлов,расположенных на рабочем столе.
Листинг на autoit.
$path = @DesktopDir
$hSearch = FileFindFirstFile($path & "/" &"*.txt*")
$result = ""
While 1
$sFileName = FileFindNextFile($hSearch)
If @error Then ExitLoop
$result &= $sFileName & @CRLF
WEnd
FileClose($hSearch)
msgbox(0,"сообщение",$result)
Задание 16
Запустить блокнот и отправлять посимвольно в него какую-либо строку.
Листинг на autoit.
$text = InputBox("Ввод текста","Введите что-нибудь")
Run("notepad.exe")
while 1
for $i = 0 to StringLen($text)
If WinActivate("[CLASS:Notepad]", "") Then Send(StringMid($text,$i,1))
sleep(100)
next
wend
Задание 17
Реализовать перемещение мыши по случайным координатам и отключить перемещение по нажатию клавиши Escape.
Листинг на autoit.
HotKeySet("{ESC}", "Stopmove")
Func Stopmove()
Exit
EndFunc
While 1
$x = Random(0,@DesktopWidth,1)
$y = Random(0,@DesktopHeight,1)
MouseMove($x,$y,25)
WEnd
Задание 18
Скопировать текстовые файлы с рабочего стола в отдельную папку copyfiles.
Листинг на autoit.
$path = @DesktopDir
$hSearch = FileFindFirstFile($path & "/" &"*.txt*")
$result = ""
While 1
$sFileName = FileFindNextFile($hSearch)
If @error Then ExitLoop
$source = $path & "\" & $sFileName
$dest = $path & "\" & "copyfiles\"& $sFileName
FileCopy($source,$dest)
WEnd
FileClose($hSearch)
msgbox(0,"сообщение","копирование текстовых файлов завершено")
Задание 19
Записать данные в файл и сохранить его под именем,сформированном из чисел текущего времени - часы-минуты-секунды.
Листинг на autoit.
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
GUICreate("My GUI edit",500,500)
Local $idEdit = GUICtrlCreateEdit("test",0,0, 500, 400, $ES_AUTOVSCROLL + $WS_VSCROLL)
Local $idButton = GUICtrlCreateButton("Записать файл", 0, 450, 85, 25)
GUISetState(@SW_SHOW)
Local $sFilePath = @DesktopDir & "\Dump"
If Not(FileExists($sFilePath)) Then
DirCreate($sFilePath)
EndIf
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
ExitLoop
Case $idButton
$text = GUICtrlRead($idEdit)
$filename = @hour & "-" & @MIN & "-" & @SEC & ".txt"
msgbox(0,"",$sFilePath & "\" & $filename)
if Not(FileExists($filename)) then
FileWrite($sFilePath & "\" & $filename,$text)
EndIf
EndSwitch
WEnd
GUIDelete()
Задание 20
Отображать в графическом окне координаты мыши по мере её движения.
#include <GUIConstantsEx.au3>
#include <MsgBoxConstants.au3>
GUICreate("Координаты мыши",500,500)
Local $x =GUICtrlCreateLabel("Координата X",0,0,500,100)
GUICtrlSetFont($x,25)
Local $y = GUICtrlCreateLabel("Координата Y",0,200,500,100)
GUICtrlSetFont($y,25)
GUISetState(@SW_SHOW)
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
ExitLoop
Case $GUI_EVENT_MOUSEMOVE
$aPos = MouseGetPos()
GUICtrlSetData($x,"Координата X " & $aPos[0])
GUICtrlSetData($y,"Координата Y " & $aPos[1])
EndSwitch
WEnd
|