User input/Graphical
You are encouraged to solve this task according to the task description, using any language you may know.
In this task, the goal is to input a string and the integer 75000, from graphical user interface.
AppleScript
set input to text returned of (display dialog "Enter text:" default answer "")
set input to text returned of (display dialog "Enter a number:" default answer "") as integer
Java
<lang java> import javax.swing.*;
public class GetInputSwing { public static void main(String[] args) throws Exception { int number = Integer.parseInt(JOptionPane.showInputDialog ("Enter an Integer")); String string = JOptionPane.showInputDialog ("Enter a String"); } }</lang>
Python
<lang python> import tkSimpleDialog
number = tkSimpleDialog.askinteger("Integer", "Enter a Number") string = tkSimpleDialog.askstring("String", "Enter a String")</lang>
Ruby
Unlike most other solutions, this validates the input number to be 75,000
<lang ruby>require 'tk'
def main
root = TkRoot.new l1 = TkLabel.new(root, "text" => "input a string") e1 = TkEntry.new(root) l2 = TkLabel.new(root, "text" => "input the number 75000") e2 = TkEntry.new(root) do validate "focusout" validatecommand lambda {e2.value.to_i == 75_000} invalidcommand lambda {focus_number_entry(e2)} end ok = TkButton.new(root) do text "OK" command lambda {validate_input(e1, e2)} end Tk.grid(l1, e1) Tk.grid(l2, e2) Tk.grid("x",ok, "sticky" => "w") Tk.mainloop
end
def validate_input(text_entry, number_entry)
if number_entry.value.to_i != 75_000 focus_number_entry(number_entry) else puts %Q{You entered: "#{text_entry.value}" and "#{number_entry.value}"} root.destroy end
end
def focus_number_entry(widget)
widget \ .configure("background" => "red", "foreground" => "white") \ .selection_range(0, "end") \ .focus
end
main</lang>
Tcl
<lang tcl># create entry widget: pack [entry .e1]
- read its content:
set input [.e get]</lang>
Alternatively, the content of the widget can be tied to a variable: <lang tcl>pack [entry .e1 -textvar input]
- show the content at any time by
puts $input</lang> The -validate option can be used to test the contents/edits of the widget at any time against any parameters (including testing string is integer when the user hits <Return> or such)
VBScript
strUserIn = InputBox("Enter Data") Wscript.Echo strUserIn
Vedit macro language
Displays a dialog box with two input fields and default OK button. The values entered are stored in text registers 1 and 2. The value from 2nd field is then converted into numeric value. (Accepts integers or integer expressions.)
Dialog_Input_1(1, "`User Input example`, `??Enter a string `, `??Enter a number `") #2 = Num_Eval_Reg(2)