Advertisement
tchenkov

L06u10_Diamond

Feb 16th, 2017
260
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.56 KB | None | 0 0
  1. package Uprajneniq;
  2.  
  3. import java.util.Scanner;
  4.  
  5. /**
  6.  * Created by todor on 16.02.2017 г..
  7.  */
  8. public class u10_Diamond {
  9.     public static void main(String[] args) {
  10.         Scanner scan = new Scanner(System.in);
  11.         int diamondWidth = Integer.parseInt(scan.nextLine());
  12.         int diamondTopHeight = diamondWidth/2 + diamondWidth % 2;
  13.         int diamondBottomHeight = (diamondWidth % 2) == 0 ? (diamondWidth - diamondTopHeight - 1) : (diamondWidth - diamondTopHeight);
  14.    
  15.         for (int i = 1; i <= diamondTopHeight; i++) {
  16.             diamondLineOutput(diamondWidth, i);
  17.         }
  18.         for (int i = diamondBottomHeight; i > 0; i--) {
  19.             diamondLineOutput(diamondWidth, i);
  20.         }
  21.        
  22.     }
  23.    
  24.     static void diamondLineOutput(int diamondWidth, int i) {
  25.         int sideDashesCount = (diamondWidth/2 + diamondWidth % 2) - i;
  26.         String sideDashes = stringRepeater("-", sideDashesCount);
  27.         int diamondBodyWidth = diamondWidth - sideDashesCount * 2;
  28.         String diamondBody = "";
  29.         if (diamondBodyWidth > 1){
  30.             diamondBody = "*" + stringRepeater("-", diamondBodyWidth-2) + "*";
  31.         }
  32.         else {
  33.             diamondBody = "*";
  34.         }
  35.        
  36.         System.out.println(sideDashes + diamondBody + sideDashes);
  37.     }
  38.    
  39.     static String stringRepeater (String stringToRepeat, int stringRepeatCount){
  40.         String outputString = "";
  41.         for (int i = 0; i < stringRepeatCount; i++) {
  42.             outputString += stringToRepeat;
  43.         }
  44.         return outputString;
  45.     }
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement