将相同的C++功能/概念转换为Prolog
convert same function/concept of C++ to prolog
我只是想知道是否可以通过使用I/O将c ++代码的概念转换/获取为prolog? 如果可能的话,如何? 因为正如我被告知的那样,Prolog不是一种强大的编程语言,所以我们一次只能输入一个输入,但是通过在Prolog中使用I/O,也许我们可以搜索文件中的输入。
#include <iostream>
using namespace std;
int main ()
{
int i, x;
int id[5];
cout << "Please enter an integer value: ";
cin >> i;
cout << "The value you entered is " << i<<"n";
for(x=0; x<i;x++){
cout << "Enter id: ";
cin>>id[x];
}
for(x=0; x<i;x++){
cout << "nYou have enter id "<<x+1<<": "<<id[x];
}
cout<<"n";
system("pause");
return 0;
}
有
几种方法可以编写Prolog中显示的示例程序。一种简单的方法是:
main :-
write('Please enter an integer value: '),
read(N),
integer(N),
N > 0,
length(L, N),
maplist(read_n, L),
write_list(L).
read_n(N) :-
write('Enter id: '),
read(N),
integer(N).
write_list(L) :-
write_list(L, 1).
write_list([], _) :- nl.
write_list([H|T], N) :-
format('~nYou have entered id ~w: ~w', [N, H]),
N1 is N + 1,
write_list(T, N1).
试运转:
| ?- main.
Please enter an integer value: 4.
Enter id: 5.
Enter id: 6.
Enter id: 3.
Enter id: 6.
You have entered id 1: 5
You have entered id 2: 6
You have entered id 3: 3
You have entered id 4: 6
yes
| ?-
相关文章:
- 防止主数据类型C++的隐式转换
- 模板参数替换失败,并且未完成隐式转换
- 努力将整数转换为链表。不知道我在这里做错了什么
- HEX值到wchar_t字符(UTF-8)的转换
- lambda参数转换为constexpr技巧,然后获取带链接的数组
- 将 Qvector<uint8_t> 转换为 QString
- 如何在cuSparse中使用cusparseXcoo2csr从coo转换为csc
- 有关插入适配器的错误。[错误]请求从 'back_insert_iterator<vector<>>' 类型转换为非标量类型
- 在c++中使用nlohmann从类到json的转换
- 从"int*"强制转换为"unsigned int"会丢失精度错误
- 将Integer转换为4字节的unsined字符矢量(按大端字节顺序)
- 处理小于cpu数据总线的数据类型.(c++转换为机器代码)
- 如何使用OpenCV将RBG图像转换为HSV,并将H、S和V值保存为C++中的3个独立图像
- 复制列表初始化的隐式转换的等级是多少
- 正在将指针转换为范围
- 如何防止 c++ 在从浮点型转换为双精度型(不适用于 IO)时添加额外的小数?
- 将"打开的CV图像"中的"颜色"转换为整数格式
- 是否可以从int转换为enum类类型
- 了解 GLM- openGL 中的相机转换
- 将相同的C++功能/概念转换为Prolog