81

(3 відповідей, залишених у C++)

А якісь напрацювання є ?
Бо тоді таке пишеться за гроші :)

82

(20 відповідей, залишених у C++)

scanf("%d", &a);
if(a%2==0)
printf("Парне");
else 
printf("Непарне");

Якось так, якщо в С. Але в Вашому випадку потрібно працювати з елементами масиву.
Алгоритм той самий. Ну і організувати запис в інший / той самий масив вибрані елементи.
Наче все.

83

(36 відповідей, залишених у C++)

З цієї дискусії я роблю висновк, що це не кодинг, а якась балаканина дурна, порад П.У. мало вистачити для того щоб виправити недоліки програми, koala тут навіть не потрібний, якби ви дослухалися до порад.

Що ж, у кожного своя думка.
І , до речі, балаканину почали Ви.
Наразі вважаю, варто завершити "дискусію".
І так, я не використав ці поради, бо з першого разу не вдалося реалізувати їх саме таким чином як мені було потрібно.
Ще однією причиною того, що я не витратив трохи більше часу на розбір помилок є те, що мені був потрібен результат як можна швидше. Завдання виконав.
І ось, вже чисто для себе, я використав вказівки.

А суто від Вас , то ніякої поради, окрім того, що я "шизік" не прочитав.

84

(36 відповідей, залишених у C++)

З другої спроби і після мого коментаря.

Я,звісно, перепрошую.
Але Ваш пост побачив набагато пізніше. Виправив раніше.
Вибачте, але я не вірю в те, що ви якимось чином прочитали мої думки і знаєте напевне, коли я це зробив.
Ви ж програміст. Користуйтеся фактами.
Або ж доведіть сказане.

85

(36 відповідей, залишених у C++)

Якщо ви ігноруєте поради Коали, то нічого не страєтесь.


Тобто ігнорую? Я ж сказав, що виправив на варіант С - шний. І він працює.
Тобто тепер буду знати, не знаходите?

86

(36 відповідей, залишених у C++)

koala написав:

Замініть new на calloc, а iostream на stdlib.h.

Зробив. Працює :)

87

(36 відповідей, залишених у C++)

ги ги, вивчати С++ чи С це насправді другорядне питання, а от шиза то страшне

Майте повагу.
І так, справді , є певна суперечність. Але хто в наш час ідеальний?
Я пишу так як вмію. Чого не вмію, стараюсь навчитись.
Тому якщо не маєте бажання дати якусь корисну пораду, краще взагалі не "флудіть".

88

(36 відповідей, залишених у C++)

Протестував на пустому файлі. Вивело 12.
Втім, дійсно, якщо останній рядок не закінчувати символом нового рядка, то читає правильно. Але в умові ніде про це не сказано.
І так, я прогальмував із підрахуванням - ви ж fscanf-ом читаєте, не fread-ом.
А про C/C++ вже сказано.

Втім, дякую за поради :) Критика - завжди добре :)

89

(36 відповідей, залишених у C++)

Потім - ви повністю проігнорували маї зауваження про new та stdlib.
І, наостанок, ви зчитуєте на 1 елемент більше, ніж треба

Я не проігнорував, але вирішив , що так буде краще.
І елементів зчитує стільки - скільки потрібно. Ви тестили програму?
Якщо ні, то звідки такі висновки ?

90

(36 відповідей, залишених у C++)

Всім велике дякую, код написав - працює. Суто С використати не вдалося,нажаль. Спробую вдосконалити і переписати деякі моменти.
Доречі, про system("pasue"). Я спробував без  інклуду <iostream> - не розпізнає і при компіляції -помилка.
Ось сам код. Читає адекватно:)

#include <stdio.h>
#include <iostream>


void main()
{    //reading massive
    int n = 0,a; // n - розмір массиву
   
                                        
    char *filename = "P:\\if11\\IF11 2\\Dovbysh Arthur\\Programming C\\lab5\\input.txt";
    FILE *f;
    f = fopen(filename,"r+");
    while (!feof(f)) // шукаю кількість елементів
    {
        fscanf(f,"%d", &a);
        n++;
    }
    int *A = new int[n]; 
    fseek(f, 0, 0);

    for (int i = 0; i < n; i++)
        fscanf(f, "%d", &A[i]);
    fclose(f);

    
    for (int i = 0; i < n; i++)
        printf("%d\n",A[i]);
    
    system("pause");

91

(36 відповідей, залишених у C++)

Ну, про system ("pause") я не знав, дякую.
І повторю, я вчуся:)Тому дякую за критику, спробую реалізувати ваші поради.

92

(36 відповідей, залишених у C++)

koala, щось не так?

93

(36 відповідей, залишених у C++)

Хм, чесно кажучи навіть не подумав.
Дякую за пораду, в вечері спробую.
Відпишусь,якщо щось вийде.

94

(36 відповідей, залишених у C++)

koala,а тоді до чого(якого значення) повинен працювати цикл,якщо наперед невідомо скільки там елементів?

Втрім, так пробував, програма працює аналогічно.Тобто та сама помилка.
P.Y., я знаю,що це С++, але мені це зручно, бо використовую system("pause");.

95

(36 відповідей, залишених у C++)

Можливо , lf?
Він вказує,що данні, які будуть зчитуватись будуть дійсного типу.

96

(36 відповідей, залишених у C++)

Результат :

97

(36 відповідей, залишених у C++)

Я замінив його на 10 (просто для тесту перших 10 елементів нехай виведе) , але всерівно виводить не те , що потрібно :)
Ось скріншоти :

98

(36 відповідей, залишених у C++)

Так, пробував.
Суть в тому , що данні не виводить коректно.
Тобто не всі числа.

99

(36 відповідей, залишених у C++)

Усім привіт!
Прошу вашої допомоги. Мені потрібно, якщо не важко, пояснити в чому помилка?
Суть : потрібно зчитати одновимірний масив з файлу і вивести масив на екран.
Хочу зауважити, що на даний момент вивчаю чисто С. Тому , якщо можна, поясність з точки зору С.
Мій код наведений нижче.

#include<stdio.h>
#include<iostream>


void main()
{
    
    double *A = new double[];
    FILE *f;
    f = fopen("C:\\Users\\ARTUR\\Desktop\\lab2\\lab5\\lab5\\input.txt", "r+"); 
    for (int i = 0; i <= feof(f); i++)            /* Інтуїтивно розумію, що мабуть помилка тут
                                                    але яка?*/
        fscanf(f, "%lf", &A[i]);

    for (int i = 0; i < 100; i++)
    {
        printf("A[%d]=", i + 1);
        printf("%lf\n", A[i]);
    }
            system("pause");
        fclose(f);
 }