Задаци: Сви подсегменти серије

Алгоритми и програми у програмском језику C: Сви подсегменти серије.

Сви суфикси низа бројева од 1 до n

Прочитај текст задатка.

Ако је \(n\) учитана вредност (број сегмената), прво је потребно исписати све бројеве од \(1\) до \(n\), затим бројеве од \(2\) до \(n\) и тако даље, док се на крају не испишу бројеви од \(n-1\) до \(n\) и затим бројеви од \(n\) до \(n\) тј. само број \(n\). Дакле, за сваку вредност \(i\) од 1 до \(n\) треба исписати све вредности од \(i\) до \(n\). Пошто се све вредности од \(i\) до \(n\) могу исписати коришћењем петље, задатак можемо решити коришћењем угнежђених петљи. Спољашњом петљом, чија променљива \(i\) узима вредности од 1 до \(n\), обезбеђујемо \(n\) извршавања унутрашње петље чија променљива \(j\) узима вредности од \(i\) до \(n\), док у сваком кораку унутрашње петље исписујемо вредност његове променљиве \(j\).

Предложено решење задатка

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(void)
{
    int n;
    scanf("%d", &n);
    for (int i = 1; i <= n; i++)
    {
        for (int j = i; j <= n; j++)
            printf("%d ", j);
        printf("\n");
    }
    return 0;
}

Сви префикси низа бројева од 1 до n

Прочитај текст задатка.

Задатак се једноставно решава помоћу две угнежђене петље. Спољна петља набраја све десне крајеве \(i\) префикса (то су редом бројеви од \(1\) до \(n\)), а у унутрашњој се набрајају елементи префикса (то су редом бројеви од \(1\) до \(i\)).

Предложено решење задатка

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(void)
{
    int n;
    scanf("%d", &n);
    for (int i = 1; i <= n; i++)
    {
        for (int j = 1; j <= i; j++)
            printf("%d ", j);
        printf("\n");
    }
    return 0;
}