Advertisement
tchenkov

L06u11_DrawFort

Feb 16th, 2017
203
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.98 KB | None | 0 0
  1. package Uprajneniq;
  2.  
  3. import java.text.MessageFormat;
  4. import java.util.Scanner;
  5.  
  6. /**
  7.  * Created by todor on 16.02.2017 г..
  8.  */
  9. public class u11_DrawFort {
  10.     public static void main(String[] args) {
  11.         Scanner scan = new Scanner(System.in);
  12.         int fortHeight = Integer.parseInt(scan.nextLine());
  13.        
  14.         int roofSpikesCount = fortHeight / 2;
  15.         int roofUnderlineSignsCount = (fortHeight - 2 - roofSpikesCount) * 2;
  16.         // Roof Strings (first string line)
  17.         String roofTowerString = stringRepeater("^", roofSpikesCount);
  18.         String roofUnderlineSignsString = stringRepeater("_", roofUnderlineSignsCount);
  19.         String fortRoofString = MessageFormat.format("/{0}\\{1}/{0}\\", roofTowerString, roofUnderlineSignsString);
  20.         // Fort Body String
  21.         String fortBodyString = "|" + stringRepeater(" ", fortHeight*2-2) + "|";
  22.         // Fort LastBody String
  23.         String fortLastBodySpaces = stringRepeater(" ", roofSpikesCount+1);
  24.         String fortLastBodyMiddle = stringRepeater("_", roofUnderlineSignsCount);
  25.         String fortLastBodyString = MessageFormat.format("|{0}{1}{0}|", fortLastBodySpaces, fortLastBodyMiddle);
  26.         // Bottom Strings (last string line)
  27.         String fortBottomString =  MessageFormat.format("\\{0}/{1}\\{0}/", roofTowerString.replace('^','_'),
  28.                                                                            roofUnderlineSignsString.replace('_',' '));
  29.         // Fort Output
  30.         System.out.println(fortRoofString);
  31.         for (int i = 0; i < fortHeight - 3; i++) {
  32.             System.out.println(fortBodyString);
  33.         }
  34.         System.out.println(fortLastBodyString);
  35.         System.out.println(fortBottomString);
  36.     }
  37.    
  38.     static String stringRepeater (String stringToRepeat, int stringRepeatCount){
  39.         String outputString = "";
  40.         for (int i = 0; i < stringRepeatCount; i++) {
  41.             outputString += stringToRepeat;
  42.         }
  43.         return outputString;
  44.     }
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement