逻辑学探析:语旨行为分类与断定式、指令式的理解

需积分: 5 7 下载量 195 浏览量 更新于2024-08-20 收藏 4.18MB PPT 举报
"语旨行为的分类,包括断定式和指令式,是逻辑学中的重要概念。断定式语旨行为旨在使说话者承认事物的状态,如‘断定’、‘肯定’,并可以用公式表示为:├↓B(p)。而指令式语旨行为则是说话者试图影响听话者的行动,如‘命令’、‘请求’,其公式为:!↑W(H做A)。逻辑学关注思维的规律和规则,包括排中思维,例如在鲍西娅的猜匣问题中应用。此外,逻辑学还涉及‘逻辑’一词的多种含义,思维的类型如概念、命题和推理,以及思维与语言的密切关系。" 在逻辑学中,语旨行为的分类是理解言语交际基础的关键。断定式语旨行为是说话者表达对某个命题的肯定或否定态度,如断定一个事实的存在或不存在。这类行为可以通过诸如“断定”、“肯定”等动词来表达,并可以用逻辑公式├↓B(p)来表示,其中“├”表示断定,而“B(p)”则代表说话者对命题p的信念。断定式的语句在真与假之间进行评估,反映了说话者的认知状态。 指令式语旨行为则侧重于引导听话者采取行动。说话者可能“命令”或“请求”听话者完成特定任务,这种行为可以用公式!↑W(H做A)来描绘,“!”表示意图,“↑”表示动作的方向是从世界到言语,“W”代表说话者的愿望,“A”是所期望的行为。这类行为通常涉及“命令”、“请求”等动词。 逻辑学不仅研究这些语旨行为,还包括思维的过程。思维分为概念、命题和推理三个类型,其中概念是对一类事物本质属性的抽象概括,如“商品”是对交换产品的共性提炼。思维的间接性则允许我们基于已知信息推断未知事物,如通过分析推理解决鲍西娅的猜匣谜题,其中排中律被用来确定唯一真实的陈述,从而找出肖像所在。 此外,“逻辑”这个词本身有多种含义,它可以指代客观世界的规律,特定的思考方式,思维的规则,或者逻辑学这门学科本身。思维与语言紧密相连,思维借助语言来表达和实现,而语言又依赖于思维来传达意义和进行推理。这种相互依存的关系表明,理解和掌握逻辑学对于提升思维能力和有效沟通至关重要。

#include <stdio.h> #include <string.h> #include <stdlib.h> #define M 9999 int num = 0; char Nway[M]; int N[M][M]; int A= 0, B= 0, C= 0,D= 0; int information[M][M]; typedef int ElemType; typedef struct { int x; int y; } dot; typedef struct { dot data[M]; int top; } Stack; int inN(int x, int y) { if (x>=0&&y>=0&&x<A&&y<B) return 1; else return 0; }//断定点在不在图里面 int EmptyStack(Stack* R) { if (-1 == R->top) return 1; else return 0; }//断定栈是不是空栈 int FullStack(Stack* R) { if (R->top + 1 ==M) return 1; else return 0; }//断定栈是不是满栈 int enter(Stack* S, ElemType x, ElemType y) { if (FullStack(S)) { printf("ջ !\n"); return 0; } S->data[++S->top].x = x; S->data[S->top].y = y; return 1; }//断定栈是不是满栈 int out(Stack* S, ElemType* x, ElemType* y) { if (S->top == -1) return 0; else { S->top--; x = S->data[S->top + 1].x; y = S->data[S->top + 1].y; return 1; } } int main(int X, charY[]) { int i = 0, j, x = 0, y = 0; char a[M]; //制作一个空栈 Stack S = (Stack*)malloc(sizeof(Stack)); S->top = -1; while (1) { gets(a); if (strlen(a) == 0) break; B= strlen(a); for (j = 0; j <B; j++) { N[i][j] = a[j] - '0'; information[i][j] = 0; } i++; } A=i; while (1) { if (inN(x - 1, y) == 1 &&N[x - 1][y] == 0 && information[x - 1][y] == 0) { Nway[num]= 'U'; enter(S, x, y); information[x][y] = 1; x = x - 1;//上 } else { if (inN(x, y + 1) == 1 &&N[x][y + 1] == 0 && information[x][y + 1] == 0) { Nway[num] = 'R'; enter(S, x, y); information[x][y] = 1; y = y + 1;//右 } else { if (inN(x, y - 1) == 1 &&N[x][y - 1] == 0 && information[x][y - 1] == 0) { Nway[num] = 'L'; enter(S, x, y); information[x][y] = 1; y = y - 1;//左 } else { if (inN(x + 1, y) == 1 &&N[x + 1][y] == 0 && information[x + 1][y] == 0) { Nway[num] = 'D'; enter(S, x, y); information[x][y] = 1; x = x + 1; } else { information[x][y] = 1; num=num-2; out(S, &x, &y); } } } } num=num+1; if (x==A-1&&y==B-1) { Nway[num] = '\0'; break; } if (EmptyStack(S)) { printf("NO PASS!\n"); return 0; } } for (i = 0; Nway[i] != '\0';i=i+1) { printf("%c", Nway[i]); } printf("\n"); return 0; }把这个改成求迷宫的路径条数

2023-06-08 上传