Проверить, состоит ли массив только из различных чисел - C (СИ)

  1. Доброго времени суток товарищи! В институте дали задание "Проверить, состоит ли массив только из различных чисел?", вот сколько сижу, думаю, все никак не доходит чего от меня хотят? Даже и мысли не проскакивает о том как это реализовать... Выручайте!


textual

Код к задаче: «Проверить, состоит ли массив только из различных чисел - C (СИ)»

#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
 
int unique_values(const int * array, const size_t count) {
    if ( count < 2 )
        return 1;
    else {
        const int * tail = array + count - 1;
        
        while ( tail > array ) {
            if ( *tail == *array )
                return 0;
            --tail;
        }
        
        return unique_values(array + 1, count - 1);
    }
}
 
int main(void) {
    size_t count;
    
   ......

СДЕЛАЙТЕ РЕПОСТ

14   голосов, оценка 4.000 из 5



Похожие ответы
  1. Точная степень двойки Дано натуральное число N. Выведите слово YES, если число N является точной степенью двойки, или слово NO в противном случае. Операцией возведения в степень пользоваться нельзя! РешениеJava1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 public class Solution {     public static int recursion(double n) {         // Базовый случай         if (n == 1) {             return 1;         } // Базовый случай         else if (n > 1 && n < 2) {             return 0;         } // Шаг рекурсии / рекурсивное условие         else {             return recursion(n / 2);         }     }     public static void main(String[] args) {         double n = 64;         // вызов рекурсивной функции         if (recursion(n) == 1) {             System.out.println("Yes");         } else {             System.out.println("No");         }

  1. Куб состоит из n3 прозрачных и непрозрачных элементарных кубиков. Есть ли хоть один просвет по каждому из трех измерений? Если так, вывести координаты каждого просвета.Добавлено через 14 секунд Помогите пожалуйстаДобавлено через 18 часов 11 минут помогите

  1. Проверить, все ли строки матрицы упорядочены по убыванию. Если нет, найти первую неупорядоченную строку и упорядочить. Матрицу вводить вручную. без функций string.h, math.h. Для начинающих Спасибо

  1. ребят, помогите пожалуйста, есть данный ряд cat banana apple dog house bread, нужно узнать есть ли первое слово длиннее 7 символов, если да то на екран вывести true а если нет то false мой код:C1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #include #include #include int main() {     char z[50]="cat banana apple dog house bread";     int A=3,j;     int length=strlen(z);       if (A>7)     {         printf("TRUE");     }     else {         printf("FALSE");     }     getch();     return 0; }

  1. C1 2 3 4 5 6 7 8 9 10 11 #include main () {int mass[256],n,i; printf("N=");scanf("%d",&n); for (i=0;i main () {int mass[256],n,i,d; printf("N=");scanf("%d",&n); for (i=0;i

  1. Проверить, содержатся ли в символьном массиве все буквы латинского алфавита. Если содержатся, то вывести слово YES, иначе – слово NO.

  1. Помогите написать программу, которая проверяет является ли введенное число факториалом какого-нибудь числа (на Си). Если не сложно, напишите с пояснениями. У меня никак не получается, а разобраться хочется. P.S.-Если сможете, то ещё отдельно нужно рекурсивным методом. Заранее огромнейшее спасибо!

  1. Дано целое число N. Проверить, входят ли в запись числа цифры 1, 2 и 5. ___________________________________________________ Люблю циклы, но не люблю циклы)

  1. Помогите, пожалуйста, найти ошибку в программе. Само задание звучит так: Дана символьная строка и целое число k. Слово - последовательность символов между пробелами, не содержащая пробелы внутри себя. Проверить, верно ли, что в заданной строке k-ое слово имеют четную длину?C1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 { int k,i,flag;    char s[255];    do    {        printf("Введите натуральное число: ");        scanf("%d", &k);     } while (k<=0);     char *ptr=strtok(s, " ");     i=0;     flag=0;     while (ptr!=NULL)     {        i++;        printf("%s\n", ptr);        if (i==k && strlen(ptr) %2 == 0) flag=1;        ptr=strtok(0, " ");     } if (flag==1) printf("Верно\n"); else printf("Не верно\n"); return 0 }Ошибка программы в том, что если например ввести строку "101 101 10 101" и натуральное число 1, то она всегда говорит "Верно". Хотя число нечетное. Такое чувство, что просто введи любую строку и натуральное число 1 - программа выдаст всегда "Верно"

  1. 11. Вывести строку длины N (N — четное), которая состоит из чередующихся символов C1 и C2, начиная с C1.