Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






  • Как продвинуть сайт на первые места?
    Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.
    Ускорение продвижения
    Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.
    Начать продвижение сайта
  • Поиск минимального (максимального) элемента в массиве






    Условно первый (с номером 0) элемент массива считается минимальным (максимальным), затем в цикле путем сравнения находим фактическое значение.

    min=A[0]; // начальное значение минимума

    imin=0; // начальное значение индекса

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

    if (A[i]< min) { min=A[i]; imin=i; }

    printf (“min=A[%d]=%d\n”, imin, A[imin]);

    Если в массиве несколько элементов имеют минимальное значение, то в imin будет запоминаться индекс первого из них. Если проверять условие A[i]< =min, то – последнего.

    Для поиска максимального элемента нужно в улови заменить знак < на знак >.

    Примеры решения

    1. Ввести массив из n целых чисел. Вычислить сумму (произведение) и количество элементов, кратных 3 и не кратных 2, или вывести сообщение «Таких значений нет».

    #include < stdio.h>

    #include< conio.h>

    void main()

    { const int n=10;

    int a[n], s=0, k=0, i;

    // s=0; k=0; - начальное значение суммы и количества

    /* для произведения вместо s задать

    long p=1; начальное значение произведения; long, т.к. произведение быстро растет и выходит за пределы типа int (32767) */

    clrscr();

    puts(" Vvedite massiv");

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

    { printf(" a[%d]=", i+1);

    scanf(" %d", & a[i]);

    }

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

    // проверка на кратность 3 и не кратность 2 //

    if (a[i]%3==0 & & a[i]%2! =0) // % - остаток от деления

    { s=s+a[i]; // накапливание суммы

    // p=p*a[i]; накапливание произведения

    k++; // накапливание количества

    }

    puts(" \nResult");

    if (k= =0) puts(" net");

    else

    // \t – табуляция (запрограммированное число пробелов)

    printf(" s=%d \t k=%d\n", s, k);

    // или для произведения

    // printf(" p=%ld \t k=%d\n", p, k);

    // %ld – формат вывода данных типа long (длинный целый)

    getch();

    }

    Если функция getch(); не используется, то просмотреть результат можно нажатием комбинации клавиш Alt-F5.

    Проверка, что элемент массива заканчивается заданной цифрой m (ввести с клавиатуры):

    puts(“Vvedite zadannoe chislo m”);

    scanf(“%d”, & m);

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

    if (a[i] % 10 = = m) ….. /* остаток от деления на 10 равен последней цифре числа. Если этот остаток равен m, то …*/

    Проверка, что элементы массива являются квадратами некоторого заданного числа Pдесь обязательно требуется подключение файла math.h в разделе #include):

    puts(“Vvedite zadannoe chislo P”);

    scanf(“%d ”, & P);

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

    if (sqrt(a[i]) = = P) // квадратный корень из элемента массива = P

    2. В одномерном массиве из n элементов найти и вывести значение и номер первого отрицательного значения или вывести сообщение об отсутствии отрицательных чисел.

    При решении данной задачи может потребоваться досрочный выход из цикла (при наличии отрицательного числа), т. е. оператор break.

    #include < stdio.h>

    #include< conio.h>

    #include < stdlib.h>

    void main()

    { const int n=10;

    int a[n], i;

    int f=0; // флажок указывает на успешность поиска

    // изначально 0, т. к. еще ничего не найдено

    // заполним массив случайными числами

    randomize();

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

    { a[i]=20 – random(100);

    printf (“%d\t”, a[i]);

    }

    printf (“\n”); // перевод курсора на новую строку экрана

    // начало поиска

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

    if (a[i]< 0)

    { f=1; //устанавливаем флажок в состояние «истина»

    printf (“a[%d]=%d\n”, i, a[i]);

    break;

    }

    if (f= =0) puts (“< 0 нет”);

    getch();

    }

    Для поиска значения и номера последнего отрицательного значения массив лучше рассматривать с конца, т. е. при поиске записать for (i=n-1; i> =0; i--)






    © 2023 :: MyLektsii.ru :: Мои Лекции
    Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
    Копирование текстов разрешено только с указанием индексируемой ссылки на источник.