Loading...
inser7 avatar inser7 221 Точки

[Programming Basics] Exam - 25.06.2017 - 05. Триъгълник

Здравейте колеги и колежки!

Имам нужда от помощ за тази задача. Като цяло изчертах цялата фигура,без "(@)". Просто незнам как да сложа този символ в средата на тръгълника без да си разваля цикъла. Пробвах с if (rows == N /2) конструкция ,но така ми се печата правилната фигура + още един ред......

или програмата гърми!

Моля за помощ....  https://pastebin.com/7hBH5DU7

 

Благодаря предварително  

Тагове:
0
Programming Basics 09/07/2017 20:18:50
spzvtbg avatar spzvtbg 581 Точки
Best Answer

сложи тази същата проверка наи-отгоре в цикъла и в проверката, отпечатай си реда с @-та и  сложи едно continue; - след печатането в проверката. Така цикъла ще продължи със следващата итернация без да изпълнява останалата част от кода в него

0
07/07/2017 23:51:30
inser7 avatar inser7 221 Точки

Много ти благодаря spzvtbg. Досега не ми се беше случвало да използвам "continue;" Оказа се доста полезна команда.

Една думичка,а прави чудеса. Благодаря още веднъж!

0
sis44o avatar sis44o 5 Точки

Ето и моето решение:
https://pastebin.com/SLjzVNRT

0
IcakaxD avatar IcakaxD 3 Точки

Като цяло щом имаш такъв символ който ти смазва цикъла или измисли условие при което да наложи този символ или разцепи рисунката на повече части.

Най-лесното е да извадиш този ред от външните ти цикли и да го направиш сам да си е рекърдс.

Но не забравяй да запазиш в променлива моментното състояние на горния цикъл за да го продължиш от долу.

0
ivanrk avatar ivanrk 68 Точки

                if (row == N / 2 + 1)
                {
                    Console.WriteLine("{0}{1}{2}(@){2}{1}{0}",
                new string('.', dots),
                new string('#', hash),
                new string(' ', (spaces - 3) /  2));
                }
                else
                {
                    Console.WriteLine("{0}{1}{2}{1}{0}",
                new string('.', dots),
                new string('#', hash),
                new string(' ', spaces));
                }

0
Dekrower avatar Dekrower 2 Точки
import java.util.Scanner;

public class AS {
    public static void main(String[] args) {
        Scanner consoled = new Scanner(System.in);

        int n=Integer.parseInt(consoled.nextLine());
        int triangleWidth=(4*n)+1;
        int triangleHeight=(2*n)+1;

        System.out.printf("%s%n",repeat("#",triangleWidth));


            for (int i = 0; i <n ; i++) {

                if(i==n/2){
                    System.out.printf("%s%s%s(@)%s%s%s%n",repeat(".",1+i),
                    repeat("#",n*2-1-i*2),
                    repeat(" ",i-1),repeat(" ",i-1),
                    repeat("#",n*2-1-i*2),repeat(".",1+i));
                    continue;
                    
                }
                System.out.printf("%s%s%s%s%s%n",repeat(".",1+i),repeat("#",n*2-1-i*2),
                        repeat(" ",1+i*2),
                        repeat("#",n*2-1-i*2),
                        repeat(".",1+i));


            }for (int i = 0; i <n ; i++) {
                System.out.printf("%s%s%s%n",repeat(".",n+1+i),repeat("#",n*2-1-i*2),repeat(".",n+1+i));

                
            }
                  }
            

  public static String repeat(String text,int count){
        String result="";

        for (int i = 0; i <count ; i++) {
            result+=text;
        }
        return result;
    }
}

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.