diff --git a/problem-set/Friends.java b/problem-set/Friends.java new file mode 100644 index 0000000..24d231f --- /dev/null +++ b/problem-set/Friends.java @@ -0,0 +1,25 @@ +/** + * 63-ე ამოცანის გაგრძელება, დაბეჭდეთ თითოეული შეყვანილი სახელი და მის გასწვრივ + * მძიმით გამოყოფილი მეგობრების სია. + * */ + +import acm.program.ConsoleProgram; +import java.util.ArrayList; +import java.util.Map; + +public class Friends extends ConsoleProgram { + public void run() { + + } + void printFriends(Map> friends){ + for(String name : friends.keySet()){ + print("Friends of " + name + " are: "); + ArrayList friendsList = friends.get(name); + for(int i = 0; i < friendsList.size()-1; i++){ + print(friendsList.get(i) + ", "); + } + print(friendsList.get(friendsList.size()-1)); + println(); + } + } +} diff --git a/problem-set/Friends.md b/problem-set/Friends.md new file mode 100644 index 0000000..3835f1d --- /dev/null +++ b/problem-set/Friends.md @@ -0,0 +1,42 @@ +პრობლემა: +``` +63-ე ამოცანის გაგრძელება, დაბეჭდეთ თითოეული შეყვანილი სახელი და მის გასწვრივ +მძიმით გამოყოფილი მეგობრების სია. +``` + +## პრობლემის გადაჭრის გზა + +გადავუყვეთ უკვე გადმოცემულ მაპს, სადაც შენახულია, ადამიანის სახელი და მისი მეგობრები +ჩვენი ერთადერთი ამოცანაა გადავუყვეთ მას, და ყოველი ადამიანისთვის +დავბეჭდოთ მისი სახელი და მისი მეგობრების სია + +--- + +### მაპზე გადაყოლა +გადავუყვეთ for-each ციკლით მაპის ქიებს + +for-each_ის სინტაქსი არის შემდეგნაირი + +for(type variableName : place){ + //.... +} +variableName თითოეულ იტერაციაზე რიგრიგობით გახდება place-ის ყველა ელემენტი + +ყოველი ქისთვის ამოვიღოთ მეგობრევის ვექტორი და +ელემენტები მეგობრების ვექტორში დავბეჭდოთ შემდეგნაირად + + for(int i = 0; i < friendsList.size()-1; i++){ + print(friendsList.get(i) + ", "); + } + print(friendsList.get(friendsList.size()-1)); + +ვინაიდან, ჩვენ არ გვინდა, რომ ბოლო მეგობრის მერეც დაიწეროს მძიმე +მხოლოდ მეგობრების რაოდენობას-1 ელემენტს უნდა მოყვებოდეს "," + + + + + + + +