I already showed you the scalable four: 

http://silo.cs.indiana.edu:8346/c212/sum2017/0627a.phps

public class One {
  public static void main(String[] args) {
    int size = Integer.parseInt( args[0] ); 
    for ( int lines = 0 ; lines < size ; lines = lines + 1 ) {
      for (int columns = 0; columns < size; columns = columns + 1) {
        if ( (lines + columns == size/2) || 
             (lines == size/2 && columns < 3 * size / 4)  ||
             (columns == size/2 && lines > size / 4) 
           ) {
          System.out.print("* "); 
        } else {  
          System.out.print("  ");         
        }
      } // end of line 
      System.out.println(); 
    }
  }
}

Welcome to DrJava.  Working directory is C:\Users\dgerman\Desktop
> java One 17
                *                 
              *                   
            *                     
          *                       
        *                         
      *         *                 
    *           *                 
  *             *                 
* * * * * * * * * * * *           
                *                 
                *                 
                *                 
                *                 
                *                 
                *                 
                *                 
                *                 
> java One 12
            *           
          *             
        *               
      *                 
    *       *           
  *         *           
* * * * * * * * *       
            *           
            *           
            *           
            *           
            *           


The others are not that different either: 

import java.util.*;

public class HomeworkThree {
  public static void main(String[] args) {
    Scanner duke = new Scanner(System.in);
    System.out.print("What patttern do you want me to draw: " );
    String pattern = duke.nextLine();
    System.out.print("What size do you want this pattern: " );
    int size = duke.nextInt();
    if (! "4ZMQR".contains( pattern )) {
      System.out.println("Sorry, don't know that pattern.");
    } else {
      HomeworkThree.draw(pattern.charAt(0), size);
    }
    System.out.println("Bye now.");
  }
  public static void draw(char p, int s) {
    System.out.println();
    for (int i = 0; i < s; i++) {
      for (int j = 0; j < s; j++) {
        if (HomeworkThree.predicate(p, i, j, s)) {
          System.out.print("* ");
        } else {
          System.out.print("  ");
        }
      }
      System.out.println();
    }
    System.out.println();
  }
  public static boolean predicate(char pattern, int line, int column, int size) {
    if (pattern == '4') return line + column == size / 2 || line == size/2 && column < 2 * size / 3 || column == size/2 && line > size / 3;
    if (pattern == 'Z') return line == 0 || line == size - 1 || line + column == size - 1 || line == size / 2 && column >= size/3 && column <= 2 * size / 3;
    if (pattern == 'M') return column == 0 || column == size-1 || (column == line || line + column == size - 1) && line <= size / 2;
    if (pattern == 'R') return column == 0 || line == 0 || line == size/2 || line == column && column >= size / 2 || column == size-1 && line <= size/2;
    if (pattern == 'Q') return line + column == size/2 || line + column == 3 * size/2 || line == column&& line > size/2 || line - column == size/2 || line - column == -size / 2;
    return false;
  }
}

--