def add(a, b):
return a+b
c = add(1,2)
print(c)
ruby Todoリスト
TODO_FILE = "todo.txt"
def show_todo_list
if File.exist?(TODO_FILE)
File.open(TODO_FILE, "r") do |file|
puts "TODOリスト:"
puts file.readlines
end
else
puts "TODOリストは空です。"
end
end
def add_todo_item(item)
File.open(TODO_FILE, "a") do |file|
file.puts(item)
end
puts "TODOリストに「#{item}」を追加しました。"
end
def remove_todo_item(item_number)
if File.exist?(TODO_FILE)
lines = File.readlines(TODO_FILE)
if item_number > 0 && item_number <= lines.size
removed_item = lines.delete_at(item_number - 1).chomp
File.open(TODO_FILE, "w") do |file|
file.puts(lines)
end
puts "TODOリストから「#{removed_item}」を削除しました。"
else
puts "指定された番号のTODOアイテムが見つかりません。"
end
else
puts "TODOリストは空です。"
end
end
loop do
puts "\n操作を選択してください:"
puts "1. TODOリストを表示する"
puts "2. 新しいTODOアイテムを追加する"
puts "3. TODOアイテムを削除する"
puts "4. 終了する"
print "> "
choice = gets.chomp.to_i
case choice
when 1
show_todo_list
when 2
print "新しいTODOアイテムを入力してください: "
new_item = gets.chomp
add_todo_item(new_item)
when 3
show_todo_list
print "削除するTODOアイテムの番号を入力してください: "
item_number = gets.chomp.to_i
remove_todo_item(item_number)
when 4
puts "プログラムを終了します。"
break
else
puts "無効な選択です。もう一度選択してください。"
end
end
CSS クラスセレクター
index.html
@charset "utf-8";
body {
margin: 0;
}
.container {
width: 400px;
margin: 32px auto 0;
border: 8px solid blue;
}
.box-1 {
width: 100px;
height: 100px;
background-color: pink;
}
.box-2 {
width: 100px;
height: 50px;
background-color: skyblue;
}
.box-3 {
width: 100px;
height: 100px;
background-color: orange;
}
style.css
@charset "utf-8";
body {
margin: 0;
}
.container {
width: 400px;
margin: 32px auto 0;
border: 8px solid blue;
}
.box-1 {
width: 100px;
height: 100px;
background-color: pink;
}
.box-2 {
width: 100px;
height: 50px;
background-color: skyblue;
}
.box-3 {
width: 100px;
height: 100px;
background-color: orange;
}
ruby 配列
scores = [70, 90, 80, 65, 85, 77]
# filtered_scores = scores.filter do |score|
# score >= 80
# end
# p filtered_scores
scores.filter! do |score|
score >= 80
end
p scores
scores.filter! do |score|
score >= 80
end
p scores
ruby 配列
scores = [70, 90, 80]
scores.map! do |score|
score + 5
end
p scores
ruby 文字列の連結
# names = ["Taro", "Jiro", "Saburo"]
names = %W(Taro Jiro Saburo)
p names
# connected_names = names.join
connected_names = names.join(", ")
p connected_names
ruby 変数のスコープ
def triple(num)
result = num * 3
result
end
num = 20
puts triple(10)
puts num
Java タスク管理
package sample;
import java.util.ArrayList;
import java.util.Scanner;
public class TaskManager {
private static ArrayList<Task> tasks = new ArrayList<>();
private static Scanner scanner = new Scanner(System.in);
public static void main(String[] args) {
boolean running = true;
while (running) {
System.out.println("1. タスクの追加");
System.out.println("2. タスクの削除");
System.out.println("3. タスクの表示");
System.out.println("4. タスクの状態を変更");
System.out.println("5. 終了");
System.out.print("操作を選択してください: ");
int choice = scanner.nextInt();
scanner.nextLine(); // 改行を読み飛ばす
switch (choice) {
case 1:
addTask();
break;
case 2:
deleteTask();
break;
case 3:
displayTasks();
break;
case 4:
changeTaskStatus();
break;
case 5:
running = false;
break;
default:
System.out.println("無効な選択です。");
}
}
scanner.close();
}
private static void addTask() {
System.out.print("タスクの名前を入力してください: ");
String name = scanner.nextLine();
System.out.print("タスクの期限を入力してください (例: YYYY-MM-DD): ");
String deadline = scanner.nextLine();
System.out.print("タスクの優先度を入力してください (高/中/低): ");
String priority = scanner.nextLine();
tasks.add(new Task(name, deadline, priority));
System.out.println("タスクを追加しました。");
}
private static void deleteTask() {
if (tasks.isEmpty()) {
System.out.println("削除するタスクはありません。");
return;
}
System.out.println("削除するタスクを選択してください:");
displayTasks();
System.out.print("削除するタスクの番号を入力してください: ");
int index = scanner.nextInt();
scanner.nextLine(); // 改行を読み飛ばす
if (index < 1 || index > tasks.size()) {
System.out.println("無効な番号です。");
} else {
Task deletedTask = tasks.remove(index - 1);
System.out.println(deletedTask.getName() + " を削除しました。");
}
}
private static void displayTasks() {
if (tasks.isEmpty()) {
System.out.println("タスクはありません。");
} else {
System.out.println("現在のタスク:");
for (int i = 0; i < tasks.size(); i++) {
System.out.println((i + 1) + ". " + tasks.get(i));
}
}
}
private static void changeTaskStatus() {
if (tasks.isEmpty()) {
System.out.println("タスクはありません。");
return;
}
System.out.println("状態を変更するタスクを選択してください:");
displayTasks();
System.out.print("状態を変更するタスクの番号を入力してください: ");
int index = scanner.nextInt();
scanner.nextLine(); // 改行を読み飛ばす
if (index < 1 || index > tasks.size()) {
System.out.println("無効な番号です。");
} else {
Task task = tasks.get(index - 1);
System.out.print("新しい状態を入力してください (未完了/進行中/完了): ");
String newStatus = scanner.nextLine();
task.setStatus(newStatus);
System.out.println(task.getName() + " の状態を " + newStatus + " に変更しました。");
}
}
}
class Task {
private String name;
private String deadline;
private String priority;
private String status = "未完了"; // デフォルトの状態は未完了
public Task(String name, String deadline, String priority) {
this.name = name;
this.deadline = deadline;
this.priority = priority;
}
public String getName() {
return name;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
@Override
public String toString() {
return "タスク名: " + name + ", 期限: " + deadline + ", 優先度: " + priority + ", 状態: " + status;
}
}
ruby 論理演算子
def dividable?(a, b)
# if b != 0
# if a % b == 0
# true
# else
# false
# end
# else
# false
# end
if b != 0 && a % b == 0
true
else
false
end
end
puts dividable?(10, 2) # true
puts dividable?(10, 3) # false
puts dividable?(10, 0)
ruby puts 真偽値を返すメソッド
def dividable?(a, b)
if a % b == 0
true
else
false
end
end
puts dividable?(10,2) # true
puts dividable?(10,3) #false
