Форум программистов, компьютерный форум CyberForum.ru

правильная замена на printf (язык С) - C++

Восстановить пароль Регистрация
 
VovaMazur
-12 / 33 / 8
Регистрация: 10.03.2011
Сообщений: 133
05.05.2011, 11:54     правильная замена на printf (язык С) #1
помогите правильно переписать код на С
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
#include <cstdlib>
#include <ctime>
using std::cout;
using std::endl;
int main()
{
    const int N=25;
    int A[N],B[N];
    cout<<"A -> ";
    for(int i=0; i<N; i++)
    {
        A[i]=rand()%9-5;
        cout<<A[i]<<" ";
        B[i]=rand()%8-4;
    }
    cout<<endl<<"B[i] -> ";
    for(int i=0; i<N;cout<<B[i]<<" ",i++);
    cout<<endl<<"B after replace -> ";
    for(int i=0; i<N; i++)
    {
        A[i]<0 ? B[i]*=10 : B[i]=0;
        cout<<B[i]<<" ";
    }
    system("pause");
    return 0;
 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт С++
 Аватар для ForEveR
7933 / 4715 / 318
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
05.05.2011, 11:55     правильная замена на printf (язык С) #2
VovaMazur, Посмотри синтаксис printf и напиши
VovaMazur
-12 / 33 / 8
Регистрация: 10.03.2011
Сообщений: 133
05.05.2011, 11:57  [ТС]     правильная замена на printf (язык С) #3
написал.. Но куча ошибок...=(
mimicria
return (true);
 Аватар для mimicria
1956 / 1093 / 91
Регистрация: 19.04.2011
Сообщений: 2,344
05.05.2011, 12:10     правильная замена на printf (язык С) #4
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <stdio.h>
 
int main()
{
    const int N=25;
    int i;
    int A[25],B[25];
    printf("A -> ");
    for(i=0; i<N; i++)
    {
        A[i]=rand()%9-5;
        printf("%i ", A[i]);
        B[i]=rand()%8-4;
    }
    printf("\nB[i] -> ");
    for(i=0; i<N; i++) printf("%i ", B[i]);
    printf("\nB after replace -> ");
    for(i=0; i<N; i++)
    {
        if (A[i]<0) B[i]*=10;
        else B[i]=0;
        printf("%i ", B[i]);
    }
    system("pause");
    return 0;
}
ForEveR
Модератор
Эксперт С++
 Аватар для ForEveR
7933 / 4715 / 318
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
05.05.2011, 12:13     правильная замена на printf (язык С) #5
mimicria, А есть уверенность, что данные не отрицательные?)
mimicria
return (true);
 Аватар для mimicria
1956 / 1093 / 91
Регистрация: 19.04.2011
Сообщений: 2,344
05.05.2011, 12:17     правильная замена на printf (язык С) #6
Цитата Сообщение от ForEveR Посмотреть сообщение
mimicria, А есть уверенность, что данные не отрицательные?)
Не понял, в чём проблема с отрицательными?
ForEveR
05.05.2011, 12:18
  #7

Не по теме:

mimicria, Спецификаторы printf посмотрите)
Тфу. Как часто я стал тупить. Прошу прощения. Не прав.

VovaMazur
-12 / 33 / 8
Регистрация: 10.03.2011
Сообщений: 133
05.05.2011, 20:23  [ТС]     правильная замена на printf (язык С) #8
ничо... всё норм
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16933 / 5338 / 328
Регистрация: 30.03.2009
Сообщений: 14,339
Записей в блоге: 26
06.05.2011, 09:45     правильная замена на printf (язык С) #9
mimicria, более "правильным" было бы вместо

C
1
2
const int N=25;
int A[25],B[25];
написать

C
1
2
#define N 25
int A[N],B[N];
4uX
4 / 4 / 0
Регистрация: 31.03.2011
Сообщений: 12
06.05.2011, 10:39     правильная замена на printf (язык С) #10
Evg
в чём преимущество использования #define вместо простой константы?
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16933 / 5338 / 328
Регистрация: 30.03.2009
Сообщений: 14,339
Записей в блоге: 26
06.05.2011, 16:28     правильная замена на printf (язык С) #11
4uX, в том, что если нужно вместо 25 сделать 30, то менять надо в одном месте, а не в трёх (и не в 100)
4uX
4 / 4 / 0
Регистрация: 31.03.2011
Сообщений: 12
06.05.2011, 16:35     правильная замена на printf (язык С) #12
значит это просто недопонимание. человек явно написал так по невнимательности, поэтому я подумал что ты посоветовал использовать
C++
1
2
#define N 25
int A[N],B[N];
именно вместо
C++
1
2
const int N=25;
int A[N],B[N];
отсюда и возник вопрос...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.05.2011, 17:07     правильная замена на printf (язык С)
Еще ссылки по теме:

C++ Замена printf на cout
printf и мультипоточность C++
C++ Замена функций c cout на printf() и cin на scanf()
C++ Замена printf на cout
замена scanf и printf на cin и cout в коде C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16933 / 5338 / 328
Регистрация: 30.03.2009
Сообщений: 14,339
Записей в блоге: 26
06.05.2011, 17:07     правильная замена на printf (язык С) #13
Цитата Сообщение от 4uX Посмотреть сообщение
значит это просто недопонимание. человек явно написал так по невнимательности, поэтому я подумал что ты посоветовал использовать
C++
1
2
#define N 25
int A[N],B[N];
именно вместо
C++
1
2
const int N=25;
int A[N],B[N];
отсюда и возник вопрос...
Речь шла о переводе с Си++ на Си. То, что ты написал (const int N=25) - на Си так нельзя писать. Именно поэтому C++'ную конструкцию "const int N=25" лучше переводить в "#define N 25"
Yandex
Объявления
06.05.2011, 17:07     правильная замена на printf (язык С)
Ответ Создать тему
Опции темы

Текущее время: 09:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru